diff --git a/tests/robotests/src/com/android/settings/wifi/AddNetworkFragmentTest.java b/tests/robotests/src/com/android/settings/wifi/AddNetworkFragmentTest.java index 3ba13b43e87..d4913554f4e 100644 --- a/tests/robotests/src/com/android/settings/wifi/AddNetworkFragmentTest.java +++ b/tests/robotests/src/com/android/settings/wifi/AddNetworkFragmentTest.java @@ -18,16 +18,21 @@ package com.android.settings.wifi; import static com.google.common.truth.Truth.assertThat; +import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; +import android.content.Context; +import android.net.wifi.WifiManager; import android.view.View; +import androidx.test.core.app.ApplicationProvider; + import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.settings.testutils.shadow.ShadowConnectivityManager; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.MockitoAnnotations; @@ -44,37 +49,36 @@ public class AddNetworkFragmentTest { @Before public void setUp() { MockitoAnnotations.initMocks(this); + Context context = spy(ApplicationProvider.getApplicationContext()); + when(context.getSystemService(Context.WIFI_SERVICE)).thenReturn(mock(WifiManager.class)); + mAddNetworkFragment = spy(new AddNetworkFragment()); + when(mAddNetworkFragment.getContext()).thenReturn(context); FragmentController.setupFragment(mAddNetworkFragment); } @Test - @Ignore public void getMetricsCategory_shouldReturnAddNetwork() { assertThat(mAddNetworkFragment.getMetricsCategory()).isEqualTo( MetricsEvent.SETTINGS_WIFI_ADD_NETWORK); } @Test - @Ignore public void getMode_shouldBeModeConnected() { assertThat(mAddNetworkFragment.getMode()).isEqualTo(WifiConfigUiBase2.MODE_CONNECT); } @Test - @Ignore public void launchFragment_shouldShowSubmitButton() { assertThat(mAddNetworkFragment.getSubmitButton()).isNotNull(); } @Test - @Ignore public void launchFragment_shouldShowCancelButton() { assertThat(mAddNetworkFragment.getCancelButton()).isNotNull(); } @Test - @Ignore public void onClickSubmitButton_shouldHandleSubmitAction() { View submitButton = mAddNetworkFragment.getView().findViewById( AddNetworkFragment.SUBMIT_BUTTON_ID); @@ -85,7 +89,6 @@ public class AddNetworkFragmentTest { } @Test - @Ignore public void onClickCancelButton_shouldHandleCancelAction() { View cancelButton = mAddNetworkFragment.getView().findViewById( AddNetworkFragment.CANCEL_BUTTON_ID); @@ -96,7 +99,6 @@ public class AddNetworkFragmentTest { } @Test - @Ignore public void dispatchSubmit_shouldHandleSubmitAction() { mAddNetworkFragment.dispatchSubmit(); diff --git a/tests/robotests/src/com/android/settings/wifi/ConfigureWifiEntryFragmentTest.java b/tests/robotests/src/com/android/settings/wifi/ConfigureWifiEntryFragmentTest.java index f7ae660abb1..f8f45dd3b86 100644 --- a/tests/robotests/src/com/android/settings/wifi/ConfigureWifiEntryFragmentTest.java +++ b/tests/robotests/src/com/android/settings/wifi/ConfigureWifiEntryFragmentTest.java @@ -18,16 +18,21 @@ package com.android.settings.wifi; import static com.google.common.truth.Truth.assertThat; +import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; import android.app.settings.SettingsEnums; +import android.content.Context; +import android.net.wifi.WifiManager; import android.os.Bundle; +import androidx.test.core.app.ApplicationProvider; + import com.android.wifitrackerlib.NetworkDetailsTracker; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; @@ -36,7 +41,6 @@ import org.robolectric.RobolectricTestRunner; import org.robolectric.shadows.androidx.fragment.FragmentController; @RunWith(RobolectricTestRunner.class) -@Ignore public class ConfigureWifiEntryFragmentTest { private static final String KEY_SSID = "key_ssid"; @@ -50,13 +54,16 @@ public class ConfigureWifiEntryFragmentTest { @Before public void setUp() { MockitoAnnotations.initMocks(this); - Bundle bundle = new Bundle(); + Context context = spy(ApplicationProvider.getApplicationContext()); + when(context.getSystemService(Context.WIFI_SERVICE)).thenReturn(mock(WifiManager.class)); + Bundle bundle = new Bundle(); bundle.putString(KEY_SSID, "Test AP"); bundle.putInt(KEY_SECURITY, 1 /* WEP */); mConfigureWifiEntryFragment = spy(new ConfigureWifiEntryFragment()); mConfigureWifiEntryFragment.setArguments(bundle); mConfigureWifiEntryFragment.mNetworkDetailsTracker = mNetworkDetailsTracker; + when(mConfigureWifiEntryFragment.getContext()).thenReturn(context); FragmentController.setupFragment(mConfigureWifiEntryFragment); } diff --git a/tests/robotests/src/com/android/settings/wifi/WifiConfigControllerTest.java b/tests/robotests/src/com/android/settings/wifi/WifiConfigControllerTest.java index 9952c06f3e5..8ecbaf64b12 100644 --- a/tests/robotests/src/com/android/settings/wifi/WifiConfigControllerTest.java +++ b/tests/robotests/src/com/android/settings/wifi/WifiConfigControllerTest.java @@ -22,6 +22,7 @@ import static com.android.settings.wifi.WifiConfigController.PRIVACY_SPINNER_IND import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; import static org.robolectric.Shadows.shadowOf; @@ -45,19 +46,19 @@ import android.widget.LinearLayout; import android.widget.Spinner; import android.widget.TextView; +import androidx.test.core.app.ApplicationProvider; + import com.android.settings.R; import com.android.settings.network.SubscriptionUtil; import com.android.settings.testutils.shadow.ShadowConnectivityManager; import com.android.settingslib.wifi.AccessPoint; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; import org.robolectric.Shadows; import org.robolectric.annotation.Config; import org.robolectric.shadows.ShadowInputMethodManager; @@ -66,7 +67,6 @@ import org.robolectric.shadows.ShadowSubscriptionManager; import java.util.Arrays; @RunWith(RobolectricTestRunner.class) -@Ignore @Config(shadows = ShadowConnectivityManager.class) public class WifiConfigControllerTest { @@ -96,7 +96,8 @@ public class WifiConfigControllerTest { @Before public void setUp() { MockitoAnnotations.initMocks(this); - mContext = RuntimeEnvironment.application; + mContext = spy(ApplicationProvider.getApplicationContext()); + when(mContext.getSystemService(Context.WIFI_SERVICE)).thenReturn(mock(WifiManager.class)); when(mConfigUiBase.getContext()).thenReturn(mContext); when(mAccessPoint.getSecurity()).thenReturn(AccessPoint.SECURITY_PSK); mView = LayoutInflater.from(mContext).inflate(R.layout.wifi_dialog, null); diff --git a/tests/robotests/src/com/android/settings/wifi/slice/ContextualWifiSliceTest.java b/tests/robotests/src/com/android/settings/wifi/slice/ContextualWifiSliceTest.java index 28798dfaad6..f31c216d260 100644 --- a/tests/robotests/src/com/android/settings/wifi/slice/ContextualWifiSliceTest.java +++ b/tests/robotests/src/com/android/settings/wifi/slice/ContextualWifiSliceTest.java @@ -27,8 +27,9 @@ import static org.mockito.Mockito.spy; import android.content.ContentResolver; import android.content.Context; +import android.net.Network; import android.net.NetworkCapabilities; -import android.net.wifi.WifiConfiguration; +import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import androidx.core.graphics.drawable.IconCompat; @@ -45,9 +46,10 @@ import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.testutils.shadow.ShadowConnectivityManager; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; +import org.mockito.Mock; +import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; @@ -55,29 +57,40 @@ import org.robolectric.annotation.Config; import java.util.List; @RunWith(RobolectricTestRunner.class) -@Ignore @Config(shadows = ShadowConnectivityManager.class) public class ContextualWifiSliceTest { + private static final String SSID = "123"; + + @Mock + private WifiManager mWifiManager; + @Mock + private WifiInfo mWifiInfo; + @Mock + private Network mNetwork; private Context mContext; private ContentResolver mResolver; - private WifiManager mWifiManager; private ContextualWifiSlice mWifiSlice; private FakeFeatureFactory mFeatureFactory; @Before public void setUp() { + MockitoAnnotations.initMocks(this); mContext = spy(RuntimeEnvironment.application); mResolver = mock(ContentResolver.class); mFeatureFactory = FakeFeatureFactory.setupForTest(); mFeatureFactory.slicesFeatureProvider = new SlicesFeatureProviderImpl(); mFeatureFactory.slicesFeatureProvider.newUiSession(); doReturn(mResolver).when(mContext).getContentResolver(); - mWifiManager = mContext.getSystemService(WifiManager.class); + doReturn(mWifiManager).when(mContext).getSystemService(WifiManager.class); + doReturn(true).when(mWifiManager).isWifiEnabled(); + doReturn(WifiManager.WIFI_STATE_ENABLED).when(mWifiManager).getWifiState(); + doReturn(mWifiInfo).when(mWifiManager).getConnectionInfo(); + doReturn(SSID).when(mWifiInfo).getSSID(); + doReturn(mNetwork).when(mWifiManager).getCurrentNetwork(); // Set-up specs for SliceMetadata. SliceProvider.setSpecs(SliceLiveData.SUPPORTED_SPECS); - mWifiManager.setWifiEnabled(true); mWifiSlice = new ContextualWifiSlice(mContext); } @@ -121,7 +134,7 @@ public class ContextualWifiSliceTest { mWifiSlice.sApRowCollapsed = true; connectToWifi(makeValidatedNetworkCapabilities()); - mWifiManager.disconnect(); + doReturn(null).when(mWifiManager).getCurrentNetwork(); final Slice wifiSlice = mWifiSlice.getSlice(); assertWifiHeader(wifiSlice); @@ -138,11 +151,7 @@ public class ContextualWifiSliceTest { } private void connectToWifi(NetworkCapabilities nc) { - final WifiConfiguration config = new WifiConfiguration(); - config.SSID = "123"; - mWifiManager.connect(config, null /* listener */); - ShadowConnectivityManager.getShadow().setNetworkCapabilities( - mWifiManager.getCurrentNetwork(), nc); + ShadowConnectivityManager.getShadow().setNetworkCapabilities(mNetwork, nc); } private NetworkCapabilities makeValidatedNetworkCapabilities() { diff --git a/tests/robotests/src/com/android/settings/wifi/slice/WifiSliceTest.java b/tests/robotests/src/com/android/settings/wifi/slice/WifiSliceTest.java index 6fb8bb20d58..b4a8b05f648 100644 --- a/tests/robotests/src/com/android/settings/wifi/slice/WifiSliceTest.java +++ b/tests/robotests/src/com/android/settings/wifi/slice/WifiSliceTest.java @@ -50,9 +50,10 @@ import com.android.wifitrackerlib.WifiEntry; import com.android.wifitrackerlib.WifiEntry.ConnectedState; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; +import org.mockito.Mock; +import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; @@ -63,7 +64,6 @@ import java.util.ArrayList; import java.util.List; @RunWith(RobolectricTestRunner.class) -@Ignore @Config(shadows = WifiSliceTest.ShadowSliceBackgroundWorker.class) public class WifiSliceTest { @@ -71,21 +71,24 @@ public class WifiSliceTest { private static final String AP2_NAME = "ap2"; private static final String AP3_NAME = "ap3"; + @Mock + private WifiManager mWifiManager; + private Context mContext; private ContentResolver mResolver; - private WifiManager mWifiManager; private WifiSlice mWifiSlice; @Before public void setUp() { + MockitoAnnotations.initMocks(this); mContext = spy(RuntimeEnvironment.application); mResolver = mock(ContentResolver.class); doReturn(mResolver).when(mContext).getContentResolver(); - mWifiManager = mContext.getSystemService(WifiManager.class); + doReturn(mWifiManager).when(mContext).getSystemService(WifiManager.class); + doReturn(WifiManager.WIFI_STATE_ENABLED).when(mWifiManager).getWifiState(); // Set-up specs for SliceMetadata. SliceProvider.setSpecs(SliceLiveData.SUPPORTED_SPECS); - mWifiManager.setWifiEnabled(true); mWifiSlice = new WifiSlice(mContext); } @@ -108,7 +111,7 @@ public class WifiSliceTest { @Test public void getWifiSlice_wifiOff_shouldReturnSingleRow() { - mWifiManager.setWifiEnabled(false); + doReturn(WifiManager.WIFI_STATE_DISABLED).when(mWifiManager).getWifiState(); final Slice wifiSlice = mWifiSlice.getSlice();