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

Commit 60c5313f authored by Lorenzo Colitti's avatar Lorenzo Colitti Committed by android-build-merger
Browse files

Merge "Wifi details: minor ordering fixes." into oc-dev am: 85395155

am: 1185ea72

Change-Id: Id2661d1f4edac5d987f122542176372b2f99ef3b
parents 57d6778b 1185ea72
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -269,16 +269,19 @@ public class WifiDetailPreferenceController extends PreferenceController impleme
        mForgetButton = (Button) mButtonsPref.findViewById(R.id.forget_button);
        mForgetButton.setText(R.string.forget);
        mForgetButton.setOnClickListener(view -> forgetNetwork());
        updateInfo();
    }

    @Override
    public void onResume() {
        // Ensure mNetwork is set before any callbacks above are delivered, since our
        // NetworkCallback only looks at changes to mNetwork.
        mNetwork = mWifiManager.getCurrentNetwork();
        mLinkProperties = mConnectivityManager.getLinkProperties(mNetwork);
        mNetworkCapabilities = mConnectivityManager.getNetworkCapabilities(mNetwork);
        updateInfo();
        mContext.registerReceiver(mReceiver, mFilter);
        mConnectivityManagerWrapper.registerNetworkCallback(mNetworkRequest, mNetworkCallback,
                mHandler);
        // updateInfo() will be called during registration because NETWORK_STATE_CHANGED_ACTION is
        // a sticky broadcast.
        mContext.registerReceiver(mReceiver, mFilter);
    }

    @Override
@@ -293,9 +296,8 @@ public class WifiDetailPreferenceController extends PreferenceController impleme
    }

    private void updateInfo() {
        mNetwork = mWifiManager.getCurrentNetwork();
        mLinkProperties = mConnectivityManager.getLinkProperties(mNetwork);
        mNetworkCapabilities = mConnectivityManager.getNetworkCapabilities(mNetwork);
        // No need to fetch LinkProperties and NetworkCapabilities, they are updated by the
        // callbacks. mNetwork doesn't change except in onResume.
        mNetworkInfo = mConnectivityManager.getNetworkInfo(mNetwork);
        mWifiInfo = mWifiManager.getConnectionInfo();
        if (mNetwork == null || mNetworkInfo == null || mWifiInfo == null) {
+39 −40
Original line number Diff line number Diff line
@@ -266,6 +266,11 @@ public class WifiDetailPreferenceControllerTest {
                .thenReturn(mockIpv6AddressesPref);
    }

    private void displayAndResume() {
        mController.displayPreference(mockScreen);
        mController.onResume();
    }

    @Test
    public void isAvailable_shouldAlwaysReturnTrue() {
        mController.displayPreference(mockScreen);
@@ -275,28 +280,28 @@ public class WifiDetailPreferenceControllerTest {

    @Test
    public void securityPreference_stringShouldBeSet() {
        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockSecurityPref).setDetailText(SECURITY);
    }

    @Test
    public void latestWifiInfo_shouldBeFetchedInDisplayPreference() {
        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockWifiManager, times(1)).getConnectionInfo();
    }

    @Test
    public void latestNetworkInfo_shouldBeFetchedInDisplayPreference() {
        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockConnectivityManager, times(1)).getNetworkInfo(any(Network.class));
    }

    @Test
    public void networkCallback_shouldBeRegisteredOnResume() {
        mController.onResume();
        displayAndResume();

        verify(mockConnectivityManagerWrapper, times(1)).registerNetworkCallback(
                nullable(NetworkRequest.class), mCallbackCaptor.capture(), nullable(Handler.class));
@@ -304,7 +309,7 @@ public class WifiDetailPreferenceControllerTest {

    @Test
    public void networkCallback_shouldBeUnregisteredOnPause() {
        mController.onResume();
        displayAndResume();
        mController.onPause();

        verify(mockConnectivityManager, times(1)).unregisterNetworkCallback(
@@ -316,7 +321,7 @@ public class WifiDetailPreferenceControllerTest {
        Drawable expectedIcon =
                NetworkBadging.getWifiIcon(LEVEL, NetworkBadging.BADGING_NONE, mContext.getTheme());

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockConnectionDetailPref).setIcon(expectedIcon);
    }
@@ -326,14 +331,14 @@ public class WifiDetailPreferenceControllerTest {
        String summary = "summary";
        when(mockAccessPoint.getSettingsSummary()).thenReturn(summary);

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockConnectionDetailPref).setTitle(summary);
    }

    @Test
    public void signalStrengthPref_shouldHaveIconSet() {
        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockSignalStrengthPref).setIcon(any(Drawable.class));
    }
@@ -343,7 +348,7 @@ public class WifiDetailPreferenceControllerTest {
        String expectedStrength =
                mContext.getResources().getStringArray(R.array.wifi_signal)[LEVEL];

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockSignalStrengthPref).setDetailText(expectedStrength);
    }
@@ -352,7 +357,7 @@ public class WifiDetailPreferenceControllerTest {
    public void linkSpeedPref_shouldHaveDetailTextSet() {
        String expectedLinkSpeed = mContext.getString(R.string.link_speed, LINK_SPEED);

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockLinkSpeedPref).setDetailText(expectedLinkSpeed);
    }
@@ -361,14 +366,14 @@ public class WifiDetailPreferenceControllerTest {
    public void linkSpeedPref_shouldNotShowIfNotSet() {
        when(mockWifiInfo.getLinkSpeed()).thenReturn(-1);

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockLinkSpeedPref).setVisible(false);
    }

    @Test
    public void macAddressPref_shouldHaveDetailTextSet() {
        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockMacAddressPref).setDetailText(MAC_ADDRESS);
    }
@@ -377,7 +382,7 @@ public class WifiDetailPreferenceControllerTest {
    public void ipAddressPref_shouldHaveDetailTextSet() {
        mLinkProperties.addLinkAddress(Constants.IPV4_ADDR);

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockIpAddressPref).setDetailText(Constants.IPV4_ADDR.getAddress().getHostAddress());
    }
@@ -388,7 +393,7 @@ public class WifiDetailPreferenceControllerTest {
        mLinkProperties.addRoute(Constants.IPV4_DEFAULT);
        mLinkProperties.addRoute(Constants.IPV4_SUBNET);

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockSubnetPref).setDetailText("255.255.255.128");
        verify(mockGatewayPref).setDetailText("192.0.2.127");
@@ -399,7 +404,7 @@ public class WifiDetailPreferenceControllerTest {
        mLinkProperties.addDnsServer(InetAddress.getByAddress(new byte[]{8,8,4,4}));
        mLinkProperties.addDnsServer(InetAddress.getByAddress(new byte[]{8,8,8,8}));

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockDnsPref).setDetailText("8.8.4.4,8.8.8.8");
    }
@@ -410,7 +415,7 @@ public class WifiDetailPreferenceControllerTest {
        // nor connecting and WifiStateMachine has not reached L2ConnectedState.
        when(mockWifiManager.getCurrentNetwork()).thenReturn(null);

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockActivity).finish();
    }
@@ -421,7 +426,7 @@ public class WifiDetailPreferenceControllerTest {
        reset(mockIpv6Category, mockIpAddressPref, mockSubnetPref, mockGatewayPref,
                mockDnsPref);

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockIpv6Category).setVisible(false);
        verify(mockIpAddressPref).setVisible(false);
@@ -466,8 +471,7 @@ public class WifiDetailPreferenceControllerTest {

    @Test
    public void onLinkPropertiesChanged_updatesFields() {
        mController.displayPreference(mockScreen);
        mController.onResume();
        displayAndResume();

        InOrder inOrder = inOrder(mockIpAddressPref, mockGatewayPref, mockSubnetPref,
                mockDnsPref, mockIpv6Category, mockIpv6AddressesPref);
@@ -529,8 +533,7 @@ public class WifiDetailPreferenceControllerTest {
        when(mockAccessPoint.getSettingsSummary()).thenReturn(summary);

        InOrder inOrder = inOrder(mockConnectionDetailPref);
        mController.displayPreference(mockScreen);
        mController.onResume();
        displayAndResume();
        inOrder.verify(mockConnectionDetailPref).setTitle(summary);

        // Check that an irrelevant capability update does not update the access point summary, as
@@ -563,7 +566,7 @@ public class WifiDetailPreferenceControllerTest {
        when(mockAccessPoint.getConfig()).thenReturn(null);

        mController = newWifiDetailPreferenceController();
        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockForgetButton).setVisibility(View.INVISIBLE);
    }
@@ -573,14 +576,14 @@ public class WifiDetailPreferenceControllerTest {
        when(mockWifiInfo.isEphemeral()).thenReturn(true);
        when(mockAccessPoint.getConfig()).thenReturn(null);

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockForgetButton).setVisibility(View.VISIBLE);
    }

    @Test
    public void canForgetNetwork_saved() {
        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockForgetButton).setVisibility(View.VISIBLE);
    }
@@ -591,7 +594,7 @@ public class WifiDetailPreferenceControllerTest {
        when(mockWifiInfo.isEphemeral()).thenReturn(true);
        when(mockWifiInfo.getSSID()).thenReturn(ssid);

        mController.displayPreference(mockScreen);
        displayAndResume();
        mForgetClickListener.getValue().onClick(null);

        verify(mockWifiManager).disableEphemeralNetwork(ssid);
@@ -613,8 +616,7 @@ public class WifiDetailPreferenceControllerTest {

    @Test
    public void networkStateChangedIntent_shouldRefetchInfo() {
        mController.displayPreference(mockScreen);
        mController.onResume();
        displayAndResume();

        verify(mockConnectivityManager, times(1)).getNetworkInfo(any(Network.class));
        verify(mockWifiManager, times(1)).getConnectionInfo();
@@ -627,8 +629,7 @@ public class WifiDetailPreferenceControllerTest {

    @Test
    public void rssiChangedIntent_shouldRefetchInfo() {
        mController.displayPreference(mockScreen);
        mController.onResume();
        displayAndResume();

        verify(mockConnectivityManager, times(1)).getNetworkInfo(any(Network.class));
        verify(mockWifiManager, times(1)).getConnectionInfo();
@@ -641,7 +642,7 @@ public class WifiDetailPreferenceControllerTest {

    @Test
    public void networkDisconnectedState_shouldFinishActivity() {
        mController.onResume();
        displayAndResume();

        when(mockConnectivityManager.getNetworkInfo(any(Network.class))).thenReturn(null);
        mContext.sendBroadcast(new Intent(WifiManager.NETWORK_STATE_CHANGED_ACTION));
@@ -651,8 +652,7 @@ public class WifiDetailPreferenceControllerTest {

    @Test
    public void networkOnLost_shouldFinishActivity() {
        mController.displayPreference(mockScreen);
        mController.onResume();
        displayAndResume();

        mCallbackCaptor.getValue().onLost(mockNetwork);

@@ -665,7 +665,7 @@ public class WifiDetailPreferenceControllerTest {
        mLinkProperties.addLinkAddress(Constants.IPV6_GLOBAL1);
        mLinkProperties.addLinkAddress(Constants.IPV6_GLOBAL2);

        mController.displayPreference(mockScreen);
        displayAndResume();

        List <Preference> addrs = mIpv6AddressCaptor.getAllValues();

@@ -681,7 +681,7 @@ public class WifiDetailPreferenceControllerTest {
    public void ipv6AddressPref_shouldNotBeSelectable() {
        mLinkProperties.addLinkAddress(Constants.IPV6_GLOBAL2);

        mController.displayPreference(mockScreen);
        displayAndResume();

        assertThat(mockIpv6AddressesPref.isSelectable()).isFalse();
    }
@@ -690,8 +690,7 @@ public class WifiDetailPreferenceControllerTest {
    public void captivePortal_shouldShowSignInButton() {
        InOrder inOrder = inOrder(mockSignInButton);

        mController.displayPreference(mockScreen);
        mController.onResume();
        displayAndResume();

        inOrder.verify(mockSignInButton).setVisibility(View.INVISIBLE);

@@ -710,7 +709,7 @@ public class WifiDetailPreferenceControllerTest {

    @Test
    public void testSignInButton_shouldStartCaptivePortalApp() {
        mController.displayPreference(mockScreen);
        displayAndResume();

        ArgumentCaptor<OnClickListener> captor = ArgumentCaptor.forClass(OnClickListener.class);
        verify(mockSignInButton).setOnClickListener(captor.capture());
@@ -723,7 +722,7 @@ public class WifiDetailPreferenceControllerTest {
        when(mockSignInButton.getVisibility()).thenReturn(View.VISIBLE);
        when(mockForgetButton.getVisibility()).thenReturn(View.INVISIBLE);

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockButtonsPref).setVisible(true);
    }
@@ -733,7 +732,7 @@ public class WifiDetailPreferenceControllerTest {
        when(mockSignInButton.getVisibility()).thenReturn(View.INVISIBLE);
        when(mockForgetButton.getVisibility()).thenReturn(View.VISIBLE);

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockButtonsPref).setVisible(true);
    }
@@ -743,7 +742,7 @@ public class WifiDetailPreferenceControllerTest {
        when(mockSignInButton.getVisibility()).thenReturn(View.INVISIBLE);
        when(mockForgetButton.getVisibility()).thenReturn(View.INVISIBLE);

        mController.displayPreference(mockScreen);
        displayAndResume();

        verify(mockButtonsPref).setVisible(false);
    }