diff --git a/tests/robotests/src/com/android/settings/applications/specialaccess/vrlistener/VrListenerScreenPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/specialaccess/vrlistener/VrListenerScreenPreferenceControllerTest.java index 1e5e235e1cf..7405980ffda 100644 --- a/tests/robotests/src/com/android/settings/applications/specialaccess/vrlistener/VrListenerScreenPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/applications/specialaccess/vrlistener/VrListenerScreenPreferenceControllerTest.java @@ -23,15 +23,15 @@ import static com.google.common.truth.Truth.assertThat; import android.content.Context; -import com.android.settings.testutils.shadow.ShadowActivityManager; +import androidx.test.core.app.ApplicationProvider; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import org.robolectric.shadow.api.Shadow; +import org.robolectric.shadows.ShadowActivityManager; @RunWith(RobolectricTestRunner.class) @Config(shadows = { @@ -45,7 +45,7 @@ public class VrListenerScreenPreferenceControllerTest { @Before public void setUp() { - mContext = RuntimeEnvironment.application; + mContext = ApplicationProvider.getApplicationContext(); mController = new VrListenerScreenPreferenceController(mContext, "key"); mActivityManager = Shadow.extract(mContext.getSystemService(Context.ACTIVITY_SERVICE)); } diff --git a/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessControllerTest.java b/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessControllerTest.java index bf112a6c255..badc5dbb0bd 100644 --- a/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessControllerTest.java +++ b/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessControllerTest.java @@ -25,23 +25,20 @@ import static org.mockito.Mockito.verify; import android.app.NotificationManager; import android.content.Context; +import androidx.test.core.app.ApplicationProvider; + import com.android.internal.logging.nano.MetricsProto; import com.android.settings.testutils.FakeFeatureFactory; -import com.android.settings.testutils.shadow.ShadowActivityManager; import com.android.settings.testutils.shadow.ShadowNotificationManager; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import org.robolectric.shadow.api.Shadow; @RunWith(RobolectricTestRunner.class) -@Config(shadows = { - ShadowActivityManager.class, -}) public class ZenAccessControllerTest { private static final String TEST_PKG = "com.test.package"; @@ -49,15 +46,12 @@ public class ZenAccessControllerTest { private FakeFeatureFactory mFeatureFactory; private Context mContext; private ZenAccessController mController; - private ShadowActivityManager mActivityManager; - @Before public void setUp() { - mContext = RuntimeEnvironment.application; + mContext = ApplicationProvider.getApplicationContext(); mFeatureFactory = FakeFeatureFactory.setupForTest(); mController = new ZenAccessController(mContext, "key"); - mActivityManager = Shadow.extract(mContext.getSystemService(Context.ACTIVITY_SERVICE)); } @Test diff --git a/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java b/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java index c6a9a718d69..583db5e1d50 100644 --- a/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java +++ b/tests/robotests/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetailTest.java @@ -46,6 +46,7 @@ import android.os.UserHandle; import androidx.fragment.app.FragmentActivity; import androidx.loader.app.LoaderManager; +import androidx.test.core.app.ApplicationProvider; import com.android.settings.R; import com.android.settings.SettingsActivity; @@ -53,7 +54,6 @@ import com.android.settings.fuelgauge.batteryusage.BatteryDiffEntry; import com.android.settings.fuelgauge.batteryusage.BatteryEntry; import com.android.settings.fuelgauge.batteryusage.ConvertUtils; import com.android.settings.testutils.FakeFeatureFactory; -import com.android.settings.testutils.shadow.ShadowActivityManager; import com.android.settings.testutils.shadow.ShadowEntityHeaderController; import com.android.settings.widget.EntityHeaderController; import com.android.settingslib.PrimarySwitchPreference; @@ -65,15 +65,16 @@ import com.android.settingslib.widget.LayoutPreference; import org.junit.After; import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Answers; import org.mockito.ArgumentCaptor; import org.mockito.Mock; -import org.mockito.MockitoAnnotations; +import org.mockito.junit.MockitoJUnit; +import org.mockito.junit.MockitoRule; import org.mockito.stubbing.Answer; import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import org.robolectric.util.ReflectionHelpers; @@ -83,10 +84,13 @@ import java.util.concurrent.TimeUnit; @Config( shadows = { ShadowEntityHeaderController.class, - ShadowActivityManager.class, com.android.settings.testutils.shadow.ShadowFragment.class, }) public class AdvancedPowerUsageDetailTest { + + @Rule + public final MockitoRule mMockitoRule = MockitoJUnit.rule(); + private static final String APP_LABEL = "app label"; private static final String SUMMARY = "summary"; private static final String[] PACKAGE_NAME = {"com.android.app"}; @@ -125,9 +129,7 @@ public class AdvancedPowerUsageDetailTest { @Before public void setUp() { - MockitoAnnotations.initMocks(this); - - mContext = spy(RuntimeEnvironment.application); + mContext = spy(ApplicationProvider.getApplicationContext()); when(mContext.getPackageName()).thenReturn("foo"); mFeatureFactory = FakeFeatureFactory.setupForTest(); mMetricsFeatureProvider = mFeatureFactory.metricsFeatureProvider; diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerBackgroundUsageDetailTest.java b/tests/robotests/src/com/android/settings/fuelgauge/PowerBackgroundUsageDetailTest.java index 6edbafacf9a..b6caa7f2061 100644 --- a/tests/robotests/src/com/android/settings/fuelgauge/PowerBackgroundUsageDetailTest.java +++ b/tests/robotests/src/com/android/settings/fuelgauge/PowerBackgroundUsageDetailTest.java @@ -47,11 +47,11 @@ import android.widget.CompoundButton; import androidx.fragment.app.FragmentActivity; import androidx.loader.app.LoaderManager; +import androidx.test.core.app.ApplicationProvider; import com.android.settings.SettingsActivity; import com.android.settings.fuelgauge.batteryusage.BatteryEntry; import com.android.settings.testutils.FakeFeatureFactory; -import com.android.settings.testutils.shadow.ShadowActivityManager; import com.android.settings.testutils.shadow.ShadowEntityHeaderController; import com.android.settings.widget.EntityHeaderController; import com.android.settingslib.applications.AppUtils; @@ -65,15 +65,16 @@ import com.android.settingslib.widget.SelectorWithWidgetPreference; import org.junit.After; import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Answers; import org.mockito.ArgumentCaptor; import org.mockito.Mock; -import org.mockito.MockitoAnnotations; +import org.mockito.junit.MockitoJUnit; +import org.mockito.junit.MockitoRule; import org.mockito.stubbing.Answer; import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import org.robolectric.util.ReflectionHelpers; @@ -83,10 +84,13 @@ import java.util.concurrent.TimeUnit; @Config( shadows = { ShadowEntityHeaderController.class, - ShadowActivityManager.class, com.android.settings.testutils.shadow.ShadowFragment.class, }) public class PowerBackgroundUsageDetailTest { + + @Rule + public final MockitoRule mMockitoRule = MockitoJUnit.rule(); + private static final String APP_LABEL = "app label"; private static final String SUMMARY = "summary"; private static final int ICON_ID = 123; @@ -123,9 +127,7 @@ public class PowerBackgroundUsageDetailTest { @Before public void setUp() throws Exception { - MockitoAnnotations.initMocks(this); - - mContext = spy(RuntimeEnvironment.application); + mContext = spy(ApplicationProvider.getApplicationContext()); when(mContext.getPackageName()).thenReturn("foo"); when(mContext.getPackageManager()).thenReturn(mPackageManager); when(mPackageManager.getInstallSourceInfo(anyString())).thenReturn(mInstallSourceInfo); diff --git a/tests/robotests/src/com/android/settings/homepage/SettingsHomepageActivityTest.java b/tests/robotests/src/com/android/settings/homepage/SettingsHomepageActivityTest.java index 27a85fd3d4e..6cd4f167692 100644 --- a/tests/robotests/src/com/android/settings/homepage/SettingsHomepageActivityTest.java +++ b/tests/robotests/src/com/android/settings/homepage/SettingsHomepageActivityTest.java @@ -45,29 +45,30 @@ import android.view.WindowManager; import android.widget.FrameLayout; import androidx.fragment.app.Fragment; +import androidx.test.core.app.ApplicationProvider; import com.android.settings.R; import com.android.settings.dashboard.suggestions.SuggestionFeatureProviderImpl; import com.android.settings.testutils.shadow.ShadowActivityEmbeddingUtils; -import com.android.settings.testutils.shadow.ShadowActivityManager; import com.android.settings.testutils.shadow.ShadowPasswordUtils; import com.android.settings.testutils.shadow.ShadowUserManager; import com.android.settingslib.core.lifecycle.HideNonSystemOverlayMixin; import org.junit.After; -import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.ArgumentCaptor; -import org.mockito.MockitoAnnotations; +import org.mockito.junit.MockitoJUnit; +import org.mockito.junit.MockitoRule; import org.robolectric.Robolectric; import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; import org.robolectric.android.controller.ActivityController; import org.robolectric.annotation.Config; import org.robolectric.annotation.Implementation; import org.robolectric.annotation.Implements; import org.robolectric.shadow.api.Shadow; +import org.robolectric.shadows.ShadowActivityManager; import org.robolectric.util.ReflectionHelpers; @RunWith(RobolectricTestRunner.class) @@ -77,11 +78,8 @@ import org.robolectric.util.ReflectionHelpers; ShadowActivityManager.class, }) public class SettingsHomepageActivityTest { - - @Before - public void setUp() { - MockitoAnnotations.initMocks(this); - } + @Rule + public final MockitoRule mMockitoRule = MockitoJUnit.rule(); @After public void tearDown() { @@ -120,7 +118,8 @@ public class SettingsHomepageActivityTest { @Config(qualifiers = "mcc999") public void launch_LowRamDevice_shouldHideAvatar() { final ShadowActivityManager activityManager = Shadow.extract( - RuntimeEnvironment.application.getSystemService(ActivityManager.class)); + ApplicationProvider.getApplicationContext().getSystemService( + ActivityManager.class)); activityManager.setIsLowRamDevice(true); final SettingsHomepageActivity activity = Robolectric.buildActivity( diff --git a/tests/robotests/src/com/android/settings/notification/BubbleNotificationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/BubbleNotificationPreferenceControllerTest.java index b2759767112..ea0b2a06d2f 100644 --- a/tests/robotests/src/com/android/settings/notification/BubbleNotificationPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/notification/BubbleNotificationPreferenceControllerTest.java @@ -34,21 +34,23 @@ import android.provider.Settings; import android.widget.Switch; import androidx.preference.PreferenceScreen; +import androidx.test.core.app.ApplicationProvider; -import com.android.settings.testutils.shadow.ShadowActivityManager; import com.android.settingslib.testutils.shadow.ShadowInteractionJankMonitor; import com.android.settingslib.widget.MainSwitchPreference; import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Answers; import org.mockito.Mock; -import org.mockito.MockitoAnnotations; +import org.mockito.junit.MockitoJUnit; +import org.mockito.junit.MockitoRule; import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import org.robolectric.shadow.api.Shadow; +import org.robolectric.shadows.ShadowActivityManager; @RunWith(RobolectricTestRunner.class) @Config(shadows = { @@ -56,7 +58,10 @@ import org.robolectric.shadow.api.Shadow; ShadowActivityManager.class, }) public class BubbleNotificationPreferenceControllerTest { + @Rule + public final MockitoRule mMockitoRule = MockitoJUnit.rule(); + private static final String KEY_NOTIFICATION_BUBBLES = "notification_bubbles"; private Context mContext; @Mock(answer = Answers.RETURNS_DEEP_STUBS) private PreferenceScreen mScreen; @@ -67,33 +72,29 @@ public class BubbleNotificationPreferenceControllerTest { private BubbleNotificationPreferenceController mController; private MainSwitchPreference mPreference; - private static final String KEY_NOTIFICATION_BUBBLES = "notification_bubbles"; + private ShadowActivityManager mActivityManager; @Before public void setUp() { - MockitoAnnotations.initMocks(this); - mContext = RuntimeEnvironment.application; + mContext = ApplicationProvider.getApplicationContext(); mController = new BubbleNotificationPreferenceController(mContext, KEY_NOTIFICATION_BUBBLES); - mPreference = new MainSwitchPreference(RuntimeEnvironment.application); + mPreference = new MainSwitchPreference(mContext); mPreference.setKey(mController.getPreferenceKey()); when(mScreen.findPreference(mPreference.getKey())).thenReturn(mPreference); mController.displayPreference(mScreen); + mActivityManager = Shadow.extract(mContext.getSystemService(ActivityManager.class)); } @Test public void isAvailable_lowRam_returnsUnsupported() { - final ShadowActivityManager activityManager = - Shadow.extract(mContext.getSystemService(ActivityManager.class)); - activityManager.setIsLowRamDevice(true); + mActivityManager.setIsLowRamDevice(true); assertEquals(UNSUPPORTED_ON_DEVICE, mController.getAvailabilityStatus()); } @Test public void isAvailable_notLowRam_returnsAvailable() { - final ShadowActivityManager activityManager = - Shadow.extract(mContext.getSystemService(ActivityManager.class)); - activityManager.setIsLowRamDevice(false); + mActivityManager.setIsLowRamDevice(false); assertEquals(AVAILABLE, mController.getAvailabilityStatus()); } diff --git a/tests/robotests/src/com/android/settings/notification/BubbleSummaryNotificationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/BubbleSummaryNotificationPreferenceControllerTest.java index e80fbc839d4..a201fdb4cb9 100644 --- a/tests/robotests/src/com/android/settings/notification/BubbleSummaryNotificationPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/notification/BubbleSummaryNotificationPreferenceControllerTest.java @@ -30,17 +30,17 @@ import android.content.Context; import android.provider.Settings; import androidx.preference.Preference; +import androidx.test.core.app.ApplicationProvider; import com.android.settings.R; -import com.android.settings.testutils.shadow.ShadowActivityManager; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import org.robolectric.shadow.api.Shadow; +import org.robolectric.shadows.ShadowActivityManager; @RunWith(RobolectricTestRunner.class) @Config(shadows = { @@ -48,19 +48,23 @@ import org.robolectric.shadow.api.Shadow; }) public class BubbleSummaryNotificationPreferenceControllerTest { + private static final String KEY_NOTIFICATION_BUBBLES = "notification_bubbles"; private Context mContext; private BubbleSummaryNotificationPreferenceController mController; private Preference mPreference; - private static final String KEY_NOTIFICATION_BUBBLES = "notification_bubbles"; + private ShadowActivityManager mActivityManager; + @Before public void setUp() { - mContext = RuntimeEnvironment.application; + mContext = ApplicationProvider.getApplicationContext(); mController = new BubbleSummaryNotificationPreferenceController(mContext, KEY_NOTIFICATION_BUBBLES); - mPreference = new Preference(RuntimeEnvironment.application); + mPreference = new Preference(mContext); + mActivityManager = + Shadow.extract(mContext.getSystemService(ActivityManager.class)); } @Test @@ -80,17 +84,13 @@ public class BubbleSummaryNotificationPreferenceControllerTest { @Test public void isAvailable_lowRam_returnsUnsupported() { - final ShadowActivityManager activityManager = - Shadow.extract(mContext.getSystemService(ActivityManager.class)); - activityManager.setIsLowRamDevice(true); + mActivityManager.setIsLowRamDevice(true); assertThat(mController.getAvailabilityStatus()).isEqualTo(UNSUPPORTED_ON_DEVICE); } @Test public void isAvailable_notLowRam_returnsAvailable() { - final ShadowActivityManager activityManager = - Shadow.extract(mContext.getSystemService(ActivityManager.class)); - activityManager.setIsLowRamDevice(false); + mActivityManager.setIsLowRamDevice(false); assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE); } } diff --git a/tests/robotests/src/com/android/settings/notification/app/BubblePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/app/BubblePreferenceControllerTest.java index 487ba769972..893695cb2e4 100644 --- a/tests/robotests/src/com/android/settings/notification/app/BubblePreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/notification/app/BubblePreferenceControllerTest.java @@ -55,24 +55,26 @@ import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentTransaction; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; +import androidx.test.core.app.ApplicationProvider; import com.android.settings.notification.NotificationBackend; -import com.android.settings.testutils.shadow.ShadowActivityManager; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedSwitchPreference; import com.google.common.collect.ImmutableList; import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Answers; import org.mockito.Mock; -import org.mockito.MockitoAnnotations; +import org.mockito.junit.MockitoJUnit; +import org.mockito.junit.MockitoRule; import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import org.robolectric.shadow.api.Shadow; +import org.robolectric.shadows.ShadowActivityManager; import org.robolectric.shadows.ShadowApplication; import java.util.ArrayList; @@ -83,6 +85,8 @@ import java.util.List; ShadowActivityManager.class, }) public class BubblePreferenceControllerTest { + @Rule + public final MockitoRule mMockitoRule = MockitoJUnit.rule(); private Context mContext; @Mock @@ -103,11 +107,10 @@ public class BubblePreferenceControllerTest { @Before public void setUp() { - MockitoAnnotations.initMocks(this); ShadowApplication shadowApplication = ShadowApplication.getInstance(); shadowApplication.setSystemService(Context.NOTIFICATION_SERVICE, mNm); shadowApplication.setSystemService(Context.USER_SERVICE, mUm); - mContext = RuntimeEnvironment.application; + mContext = ApplicationProvider.getApplicationContext(); when(mFragmentManager.beginTransaction()).thenReturn(mock(FragmentTransaction.class)); mController = spy(new BubblePreferenceController(mContext, mFragmentManager, mBackend, false /* isAppPage */, mListener)); diff --git a/tests/robotests/src/com/android/settings/notification/app/BubbleSummaryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/app/BubbleSummaryPreferenceControllerTest.java index 7db308e173e..6fbe40e22e0 100644 --- a/tests/robotests/src/com/android/settings/notification/app/BubbleSummaryPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/notification/app/BubbleSummaryPreferenceControllerTest.java @@ -43,27 +43,30 @@ import android.content.Context; import android.provider.Settings; import androidx.preference.Preference; +import androidx.test.core.app.ApplicationProvider; import com.android.settings.R; import com.android.settings.notification.NotificationBackend; -import com.android.settings.testutils.shadow.ShadowActivityManager; import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; -import org.mockito.MockitoAnnotations; +import org.mockito.junit.MockitoJUnit; +import org.mockito.junit.MockitoRule; import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import org.robolectric.shadow.api.Shadow; -import org.robolectric.shadows.ShadowApplication; +import org.robolectric.shadows.ShadowActivityManager; @RunWith(RobolectricTestRunner.class) @Config(shadows = { ShadowActivityManager.class, }) public class BubbleSummaryPreferenceControllerTest { + @Rule + public final MockitoRule mMockitoRule = MockitoJUnit.rule(); private Context mContext; @Mock @@ -72,16 +75,17 @@ public class BubbleSummaryPreferenceControllerTest { private BubbleSummaryPreferenceController mController; + private ShadowActivityManager mActivityManager; + @Before public void setUp() { - MockitoAnnotations.initMocks(this); - ShadowApplication shadowApplication = ShadowApplication.getInstance(); - mContext = RuntimeEnvironment.application; + mContext = ApplicationProvider.getApplicationContext(); when(mBackend.hasSentValidBubble(anyString(), anyInt())).thenReturn(true); mAppRow = new NotificationBackend.AppRow(); mAppRow.pkg = "pkg"; mAppRow.uid = 0; mController = spy(new BubbleSummaryPreferenceController(mContext, mBackend)); + mActivityManager = Shadow.extract(mContext.getSystemService(ActivityManager.class)); } @Test @@ -151,9 +155,7 @@ public class BubbleSummaryPreferenceControllerTest { Settings.Secure.putInt(mContext.getContentResolver(), NOTIFICATION_BUBBLES, SYSTEM_WIDE_ON); mController.onResume(mAppRow, null, null, null, null, null, null); - final ShadowActivityManager activityManager = - Shadow.extract(mContext.getSystemService(ActivityManager.class)); - activityManager.setIsLowRamDevice(true); + mActivityManager.setIsLowRamDevice(true); assertFalse(mController.isAvailable()); } @@ -162,9 +164,7 @@ public class BubbleSummaryPreferenceControllerTest { Settings.Secure.putInt(mContext.getContentResolver(), NOTIFICATION_BUBBLES, SYSTEM_WIDE_ON); mController.onResume(mAppRow, null, null, null, null, null, null); - final ShadowActivityManager activityManager = - Shadow.extract(mContext.getSystemService(ActivityManager.class)); - activityManager.setIsLowRamDevice(false); + mActivityManager.setIsLowRamDevice(false); assertTrue(mController.isAvailable()); }