Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c7593b1e authored by Amin Shaikh's avatar Amin Shaikh
Browse files

Do not display <unknown ssid>.

Fixes: 73853121
Test: runtest systemui
Change-Id: Ib16a63cb9edfbd287724500adf515287f12c0d07
parent 31d58db7
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ import android.net.NetworkInfo;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.net.wifi.WifiSsid;

import java.util.List;

@@ -53,7 +54,7 @@ public class WifiStatusTracker {
            if (connected) {
                WifiInfo info = mWifiManager.getConnectionInfo();
                if (info != null) {
                    ssid = getSsid(info);
                    ssid = getValidSsid(info);
                } else {
                    ssid = null;
                }
@@ -67,9 +68,9 @@ public class WifiStatusTracker {
        }
    }

    private String getSsid(WifiInfo info) {
    private String getValidSsid(WifiInfo info) {
        String ssid = info.getSSID();
        if (ssid != null) {
        if (ssid != null && !WifiSsid.NONE.equals(ssid)) {
            return ssid;
        }
        // OK, it's not in the connectionInfo; we have to go hunting for it
+1 −1
Original line number Diff line number Diff line
@@ -198,7 +198,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
            }
        });
        mWifiSignalController = new WifiSignalController(mContext, mHasMobileDataFeature,
                mCallbackHandler, this);
                mCallbackHandler, this, mWifiManager);

        mEthernetSignalController = new EthernetSignalController(mContext, mCallbackHandler, this);

+3 −2
Original line number Diff line number Diff line
@@ -43,10 +43,11 @@ public class WifiSignalController extends
    private final WifiStatusTracker mWifiTracker;

    public WifiSignalController(Context context, boolean hasMobileData,
            CallbackHandler callbackHandler, NetworkControllerImpl networkController) {
            CallbackHandler callbackHandler, NetworkControllerImpl networkController,
            WifiManager wifiManager) {
        super("WifiSignalController", context, NetworkCapabilities.TRANSPORT_WIFI,
                callbackHandler, networkController);
        mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
        mWifiManager = wifiManager;
        mWifiTracker = new WifiStatusTracker(mWifiManager);
        mHasMobileData = hasMobileData;
        Handler handler = new WifiHandler(Looper.getMainLooper());
+7 −5
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@ import android.net.NetworkCapabilities;
import android.net.NetworkInfo;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.net.wifi.WifiSsid;
import android.support.test.runner.AndroidJUnit4;
import android.test.suitebuilder.annotation.SmallTest;
import android.testing.AndroidTestingRunner;
@@ -21,6 +22,7 @@ import static junit.framework.Assert.assertEquals;

import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyBoolean;
import static org.mockito.Mockito.when;

@SmallTest
@RunWith(AndroidTestingRunner.class)
@@ -143,10 +145,11 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
    protected void setWifiState(boolean connected, String ssid) {
        Intent i = new Intent(WifiManager.NETWORK_STATE_CHANGED_ACTION);
        NetworkInfo networkInfo = Mockito.mock(NetworkInfo.class);
        Mockito.when(networkInfo.isConnected()).thenReturn(connected);
        when(networkInfo.isConnected()).thenReturn(connected);

        //TODO(b/69974497) mock of mWifiManager.getConnectionInfo() needed
        // Mockito.when(wifiInfo.getSSID()).thenReturn(ssid);
        WifiInfo wifiInfo = Mockito.mock(WifiInfo.class);
        when(wifiInfo.getSSID()).thenReturn(ssid);
        when(mMockWm.getConnectionInfo()).thenReturn(wifiInfo);

        i.putExtra(WifiManager.EXTRA_NETWORK_INFO, networkInfo);
        mNetworkController.onReceive(mContext, i);
@@ -175,8 +178,7 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest {
        assertEquals("WiFi enabled, in quick settings", enabled, (boolean) enabledArg.getValue());
        assertEquals("WiFi connected, in quick settings", connected, iconState.visible);
        assertEquals("WiFi signal, in quick settings", icon, iconState.icon);
        // TODO(b/69974497) Need to mock mWifiManager.getConnectionInfo() to supply the ssid.
        // assertEquals("WiFI desc (ssid), in quick settings", description, descArg.getValue());
        assertEquals("WiFI desc (ssid), in quick settings", description, descArg.getValue());
    }

    protected void verifyLastWifiIcon(boolean visible, int icon) {