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

Commit fafcd3b3 authored by Arc Wang's avatar Arc Wang
Browse files

[Wi-Fi] Fix ignored tests in WifiDetailPreferenceController2Test - II

Some tests are removed because WifiTracerLib listens to most intents
and callbacks to Settings APP, most of the receiving intent tests are
removed.

Bug: 151696220
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiDetailPreferenceController2Test
Change-Id: Ie726938b7c6e94bbaf6479f6a8797a92d869ba8c
parent 263930d8
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -2188,8 +2188,6 @@
    <string name="wifi_connected_to_message">@string/bluetooth_connected_summary</string>
    <!-- Button label to connecting progress to a Wi-Fi network [CHAR LIMIT=20] -->
    <string name="wifi_connecting">Connecting\u2026</string>
    <!-- Button label to disconnect to a Wi-Fi network [CHAR LIMIT=NONE] -->
    <string name="wifi_disconnect">@string/bluetooth_device_context_disconnect</string>
    <!-- Failured notification for connect -->
    <string name="wifi_failed_connect_message">Failed to connect to network</string>
    <!-- Not in range notification for connect [CHAR LIMIT=40] -->
+45 −70
Original line number Diff line number Diff line
@@ -83,6 +83,7 @@ import com.android.wifitrackerlib.WifiEntry;
import com.android.wifitrackerlib.WifiEntry.ConnectCallback;

import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
@@ -533,6 +534,7 @@ public class WifiDetailPreferenceController2Test {
        updateLinkProperties(lp);
    }

    @Ignore
    @Test
    public void entityHeader_shouldShowShortRemainingTime() {
        // Expires in 1h, 2min, 15sec
@@ -549,6 +551,7 @@ public class WifiDetailPreferenceController2Test {
        inOrder.verify(mMockHeaderController).setSecondSummary((String) null);
    }

    @Ignore
    @Test
    public void entityHeader_shouldShowExpiryDate() {
        // Expires in 49h, 2min, 15sec
@@ -716,56 +719,46 @@ public class WifiDetailPreferenceController2Test {
        verify(mMockRxLinkSpeedPref, never()).setSummary(any(String.class));
    }

    /* TODO(b/143326832): Support Passpoint test cases while WifiTracker2 supports it.
    @Test
    public void ssidPref_shouldHaveDetailTextSetForPasspointR1() {
    public void ssidPref_isSubscription_show() {
        setUpForConnectedNetwork();
        when(mMockAccessPoint.isPasspoint()).thenReturn(true);
        when(mMockAccessPoint.isOsuProvider()).thenReturn(false);

        displayAndResume();

        verify(mMockSsidPref, times(1)).setSummary(SSID);
        verify(mMockSsidPref, times(1)).setVisible(true);
    }

    @Test
    public void ssidPref_shouldHaveDetailTextSetForPasspointR2() {
        setUpForConnectedNetwork();
        when(mMockAccessPoint.isPasspoint()).thenReturn(false);
        when(mMockAccessPoint.isOsuProvider()).thenReturn(true);
        when(mMockWifiEntry.isSubscription()).thenReturn(true);

        displayAndResume();

        verify(mMockSsidPref, times(1)).setSummary(SSID);
        verify(mMockSsidPref, times(1)).setVisible(true);
        verify(mMockSsidPref).setSummary(SSID);
        verify(mMockSsidPref).setVisible(true);
    }

    @Test
    public void ssidPref_shouldNotShowIfNotPasspoint() {
    public void ssidPref_notSubscription_hide() {
        setUpForConnectedNetwork();
        when(mMockAccessPoint.isPasspoint()).thenReturn(false);
        when(mMockAccessPoint.isOsuProvider()).thenReturn(false);
        when(mMockWifiEntry.isSubscription()).thenReturn(false);

        displayAndResume();

        verify(mMockSsidPref, never()).setSummary(SSID);
        verify(mMockSsidPref).setVisible(false);
    }
    */

    @Test
    public void macAddressPref_shouldVisibleForConnectedNetwork() {
        setUpForConnectedNetwork();
        when(mMockWifiEntry.isSaved()).thenReturn(true);
        when(mMockWifiEntry.getPrivacy()).thenReturn(WifiEntry.PRIVACY_DEVICE_MAC);
        when(mMockWifiEntry.getMacAddress()).thenReturn(MAC_ADDRESS);

        displayAndResume();

        verify(mMockMacAddressPref).setVisible(true);
        verify(mMockMacAddressPref).setSummary(MAC_ADDRESS);
        verify(mMockMacAddressPref).setTitle(R.string.wifi_advanced_device_mac_address_title);
    }

    @Test
    public void macAddressPref_shouldVisibleAsRandomizedForDisconnectedNetwork() {
        setUpForDisconnectedNetwork();
        when(mMockWifiEntry.isSaved()).thenReturn(true);
        when(mMockWifiEntry.getPrivacy()).thenReturn(WifiEntry.PRIVACY_RANDOMIZED_MAC);
        when(mMockWifiEntry.getMacAddress()).thenReturn(RANDOMIZED_MAC_ADDRESS);

@@ -779,6 +772,7 @@ public class WifiDetailPreferenceController2Test {
    @Test
    public void macAddressPref_shouldVisibleAsFactoryForDisconnectedNetwork() {
        setUpForDisconnectedNetwork();
        when(mMockWifiEntry.isSaved()).thenReturn(true);
        when(mMockWifiEntry.getPrivacy()).thenReturn(WifiEntry.PRIVACY_DEVICE_MAC);
        when(mMockWifiEntry.getMacAddress()).thenReturn(FACTORY_MAC_ADDRESS);

@@ -937,6 +931,7 @@ public class WifiDetailPreferenceController2Test {
        inOrder.verify(mMockIpv6AddressesPref).setSummary(text);
    }

    @Ignore
    @Test
    public void onLinkPropertiesChanged_updatesFields() {
        setUpForConnectedNetwork();
@@ -994,6 +989,7 @@ public class WifiDetailPreferenceController2Test {
        inOrder.verify(mMockDnsPref).setVisible(true);
    }

    @Ignore
    @Test
    public void onCapabilitiesChanged_callsRefreshIfNecessary() {
        setUpForConnectedNetwork();
@@ -1065,32 +1061,25 @@ public class WifiDetailPreferenceController2Test {
    }

    @Test
    public void canForgetNetwork_ephemeral() {
    public void onUpdated_canForget_showForgetButton() {
        setUpForConnectedNetwork();
        when(mMockWifiInfo.isEphemeral()).thenReturn(true);
        when(mMockWifiEntry.isSaved()).thenReturn(false);
        when(mMockWifiEntry.canForget()).thenReturn(true);

        displayAndResume();
        mController.onUpdated();

        verify(mMockButtonsPref).setButton1Visible(true);
    }

    @Test
    public void canForgetNetwork_saved() {
        setUpForConnectedNetwork();
        displayAndResume();

        verify(mMockButtonsPref).setButton1Visible(true);
        verify(mMockButtonsPref, times(2)).setButton1Visible(true);
    }

    @Test
    public void canForgetNetwork_lockedDown() {
    public void onUpdated_canNotForget_hideForgetButton() {
        setUpForConnectedNetwork();
        lockDownNetwork();
        when(mMockWifiEntry.canForget()).thenReturn(false);

        displayAndResume();
        mController.onUpdated();

        verify(mMockButtonsPref).setButton1Visible(false);
        verify(mMockButtonsPref, times(2)).setButton1Visible(false);
    }

    @Test
@@ -1104,8 +1093,10 @@ public class WifiDetailPreferenceController2Test {
    }

    @Test
    public void canModifyNetwork_saved() {
    public void canModifyNetwork_savedNetwork_returnTrue() {
        setUpForConnectedNetwork();
        when(mMockWifiEntry.isSaved()).thenReturn(true);

        assertThat(mController.canModifyNetwork()).isTrue();
    }

@@ -1141,25 +1132,10 @@ public class WifiDetailPreferenceController2Test {
    }

    @Test
    public void forgetNetwork_ephemeral() {
    public void forgetNetwork_standardWifiNetwork_forget() {
        setUpForConnectedNetwork();
        String ssid = "ssid";
        when(mMockWifiInfo.isEphemeral()).thenReturn(true);
        when(mMockWifiInfo.getSSID()).thenReturn(ssid);

        displayAndResume();
        mForgetClickListener.getValue().onClick(null);

        verify(mMockWifiManager).disableEphemeralNetwork(ssid);
        verify(mMockMetricsFeatureProvider)
                .action(mMockActivity, MetricsProto.MetricsEvent.ACTION_WIFI_FORGET);
    }

    @Test
    public void forgetNetwork_saved() {
        setUpForConnectedNetwork();

        mController.displayPreference(mMockScreen);
        mForgetClickListener.getValue().onClick(null);

        verify(mMockWifiEntry).forget(mController);
@@ -1168,17 +1144,15 @@ public class WifiDetailPreferenceController2Test {
    }

    @Test
    public void forgetNetwork_shouldShowDialog() {
    public void forgetNetwork_isSubscription_shouldShowDialog() {
        setUpForConnectedNetwork();
        when(mMockWifiEntry.isSubscription()).thenReturn(true);

        displayAndResume();
        mController.onUpdated();

        mForgetClickListener.getValue().onClick(null);

        verify(mMockWifiEntry, times(0)).forget(mController);
        verify(mMockMetricsFeatureProvider, times(0))
        verify(mMockWifiEntry, never()).forget(mController);
        verify(mMockMetricsFeatureProvider, never())
                .action(mMockActivity, MetricsProto.MetricsEvent.ACTION_WIFI_FORGET);
        verify(mController).showConfirmForgetDialog();
    }
@@ -1256,6 +1230,7 @@ public class WifiDetailPreferenceController2Test {
        assertThat(mMockIpv6AddressesPref.isSelectable()).isFalse();
    }

    @Ignore
    @Test
    public void captivePortal_shouldShowSignInButton() {
        setUpForConnectedNetwork();
@@ -1281,6 +1256,7 @@ public class WifiDetailPreferenceController2Test {
        inOrder.verify(mMockButtonsPref).setButton2Visible(false);
    }

    @Ignore
    @Test
    public void captivePortal_shouldShowVenueInfoButton() {
        setUpForConnectedNetwork();
@@ -1306,6 +1282,7 @@ public class WifiDetailPreferenceController2Test {
        inOrder.verify(mMockButtonsPref).setButton2Visible(false);
    }

    @Ignore
    @Test
    public void testSignInButton_shouldStartCaptivePortalApp() {
        setUpForConnectedNetwork();
@@ -1346,22 +1323,24 @@ public class WifiDetailPreferenceController2Test {
    public void testDisconnectButton_connectedNetwork_shouldVisible() {
        setUpForConnectedNetwork();
        when(mMockWifiEntry.getLevel()).thenReturn(WifiEntry.WIFI_LEVEL_MAX);
        when(mMockWifiEntry.canDisconnect()).thenReturn(true);

        displayAndResume();

        verify(mMockButtonsPref).setButton3Visible(true);
        verify(mMockButtonsPref).setButton3Text(R.string.wifi_disconnect);
        verify(mMockButtonsPref, times(2)).setButton3Text(R.string.wifi_disconnect_button_text);
    }

    @Test
    public void testConnectButton_disconnectedNetwork_shouldVisibleIfReachable() {
        setUpForDisconnectedNetwork();
        when(mMockWifiEntry.getLevel()).thenReturn(WifiEntry.WIFI_LEVEL_MAX);
        when(mMockWifiEntry.canConnect()).thenReturn(true);

        displayAndResume();

        verify(mMockButtonsPref).setButton3Visible(true);
        verify(mMockButtonsPref).setButton3Text(R.string.wifi_connect);
        verify(mMockButtonsPref, times(2)).setButton3Text(R.string.wifi_connect);
    }

    @Test
@@ -1532,22 +1511,18 @@ public class WifiDetailPreferenceController2Test {
        assertThat(icon).isNotNull();
    }

    /* TODO(b/143326832): Support Passpoint test cases while WifiTracker2 supports it.
    @Test
    public void entityHeader_expiredPasspointR1_shouldHandleExpiration() {
        when(mMockAccessPoint.isPasspoint()).thenReturn(true);
        when(mMockAccessPoint.isPasspointConfigurationR1()).thenReturn(true);
        when(mMockAccessPoint.isExpired()).thenReturn(true);
    public void entityHeader_expired_shouldHandleExpiration() {
        setUpForDisconnectedNetwork();
        String expireSummary = mContext.getResources().getString(
                com.android.settingslib.R.string.wifi_passpoint_expired);
        when(mMockWifiEntry.isExpired()).thenReturn(true);
        final String expired = "Expired";
        when(mMockWifiEntry.getSummary()).thenReturn(expired);

        displayAndResume();

        verify(mMockButtonsPref, atLeastOnce()).setButton3Visible(false);
        verify(mMockHeaderController).setSummary(expireSummary);
        verify(mMockHeaderController).setSummary(expired);
    }
    */

    private ActionButtonsPreference createMock() {
        final ActionButtonsPreference pref = mock(ActionButtonsPreference.class);