OSDN Git Service

Update testcases which failed due to the SupportLibrary changed
authorSunny Shao <sunnyshao@google.com>
Thu, 13 Jun 2019 09:06:31 +0000 (17:06 +0800)
committerRaff Tsai <rafftsai@google.com>
Thu, 13 Jun 2019 10:02:50 +0000 (10:02 +0000)
Fragment.oncreate() causes an IllegalStateException. We use a
ShadowFragment to stop the calling sequence.

Fixes: 135086559
Test: robotest
Change-Id: I601e0f2513f826b0b7749cb2c013b7e4c0a94a33

14 files changed:
tests/robotests/src/com/android/settings/SettingsPreferenceFragmentTest.java
tests/robotests/src/com/android/settings/accessibility/AccessibilityDetailsSettingsFragmentTest.java
tests/robotests/src/com/android/settings/accounts/RemoveAccountPreferenceControllerTest.java
tests/robotests/src/com/android/settings/applications/defaultapps/DefaultAutofillPickerTest.java
tests/robotests/src/com/android/settings/biometrics/fingerprint/DeleteFingerprintDialogTest.java
tests/robotests/src/com/android/settings/datausage/AppDataUsageTest.java
tests/robotests/src/com/android/settings/datausage/BillingCycleSettingsTest.java
tests/robotests/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragmentTest.java
tests/robotests/src/com/android/settings/network/ApnEditorTest.java
tests/robotests/src/com/android/settings/testutils/shadow/ShadowFragment.java
tests/robotests/src/com/android/settings/wifi/WifiSettingsTest.java
tests/robotests/src/com/android/settings/wifi/calling/WifiCallingDisclaimerFragmentTest.java
tests/robotests/src/com/android/settings/wifi/calling/WifiCallingSettingsForSubTest.java
tests/robotests/src/com/android/settings/wifi/tether/WifiTetherSettingsTest.java

index cce0155..50e3980 100644 (file)
@@ -37,6 +37,7 @@ import androidx.preference.PreferenceManager;
 import androidx.preference.PreferenceScreen;
 
 import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.shadow.ShadowFragment;
 import com.android.settings.widget.WorkOnlyCategory;
 
 import org.junit.Before;
@@ -46,6 +47,7 @@ import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
 import org.robolectric.util.ReflectionHelpers;
 
 @RunWith(RobolectricTestRunner.class)
@@ -147,6 +149,7 @@ public class SettingsPreferenceFragmentTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void onCreate_hasExtraFragmentKey_shouldExpandPreferences() {
         doReturn(mContext.getTheme()).when(mActivity).getTheme();
         doReturn(mContext.getResources()).when(mFragment).getResources();
@@ -161,6 +164,7 @@ public class SettingsPreferenceFragmentTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void onCreate_noPreferenceScreen_shouldNotCrash() {
         doReturn(mContext.getTheme()).when(mActivity).getTheme();
         doReturn(mContext.getResources()).when(mFragment).getResources();
index 9d5a5b8..9ad00eb 100644 (file)
@@ -32,6 +32,9 @@ import android.os.Bundle;
 import android.view.accessibility.AccessibilityManager;
 
 import androidx.fragment.app.FragmentActivity;
+
+import com.android.settings.testutils.shadow.ShadowFragment;
+
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -39,6 +42,7 @@ import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
 import org.robolectric.shadow.api.Shadow;
 import org.robolectric.shadows.ShadowAccessibilityManager;
 import org.xmlpull.v1.XmlPullParserException;
@@ -47,6 +51,7 @@ import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 
+@Config(shadows = ShadowFragment.class)
 @RunWith(RobolectricTestRunner.class)
 public class AccessibilityDetailsSettingsFragmentTest {
     private final static String PACKAGE_NAME = "com.foo.bar";
index d98d30a..86522ed 100644 (file)
@@ -54,6 +54,7 @@ import com.android.settings.R;
 import com.android.settings.testutils.shadow.ShadowAccountManager;
 import com.android.settings.testutils.shadow.ShadowContentResolver;
 import com.android.settings.testutils.shadow.ShadowDevicePolicyManager;
+import com.android.settings.testutils.shadow.ShadowFragment;
 import com.android.settings.testutils.shadow.ShadowUserManager;
 import com.android.settingslib.widget.LayoutPreference;
 
@@ -169,7 +170,8 @@ public class RemoveAccountPreferenceControllerTest {
     }
 
     @Test
-    @Config(shadows = {ShadowAccountManager.class, ShadowContentResolver.class})
+    @Config(shadows = {ShadowAccountManager.class, ShadowContentResolver.class,
+            ShadowFragment.class})
     public void confirmRemove_shouldRemoveAccount()
             throws AuthenticatorException, OperationCanceledException, IOException {
         when(mFragment.isAdded()).thenReturn(true);
@@ -201,7 +203,8 @@ public class RemoveAccountPreferenceControllerTest {
     }
 
     @Test
-    @Config(shadows = {ShadowAccountManager.class, ShadowContentResolver.class})
+    @Config(shadows = {ShadowAccountManager.class, ShadowContentResolver.class,
+            ShadowFragment.class})
     public void confirmRemove_activityGone_shouldSilentlyRemoveAccount()
             throws AuthenticatorException, OperationCanceledException, IOException {
         final Account account = new Account("Account11", "com.acct1");
index 81a16d5..9ec7f0b 100644 (file)
@@ -40,6 +40,7 @@ import androidx.fragment.app.FragmentActivity;
 import androidx.preference.PreferenceScreen;
 
 import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.shadow.ShadowFragment;
 import com.android.settings.testutils.shadow.ShadowSecureSettings;
 import com.android.settingslib.applications.DefaultAppInfo;
 
@@ -133,6 +134,7 @@ public class DefaultAutofillPickerTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void mUserId_shouldDeriveUidFromManagedCaller() {
         setupUserManager();
         setupCaller();
@@ -145,6 +147,7 @@ public class DefaultAutofillPickerTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void mUserId_shouldDeriveUidFromMainCaller() {
         setupUserManager();
         setupCaller();
@@ -157,6 +160,7 @@ public class DefaultAutofillPickerTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void mUserId_shouldDeriveUidFromManagedClick() {
         setupUserManager();
         setupClick(/* forWork= */ true);
@@ -169,6 +173,7 @@ public class DefaultAutofillPickerTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void mUserId_shouldDeriveUidFromMainClick() {
         setupUserManager();
         setupClick(/* forWork= */ false);
index 0681e1c..e825c01 100644 (file)
@@ -23,12 +23,12 @@ import static org.mockito.Mockito.verify;
 import android.app.Dialog;
 import android.hardware.fingerprint.Fingerprint;
 
+import androidx.fragment.app.Fragment;
 import androidx.fragment.app.FragmentActivity;
 
 import com.android.settings.biometrics.fingerprint.FingerprintSettings.FingerprintSettingsFragment;
 import com.android.settings.biometrics.fingerprint.FingerprintSettings
         .FingerprintSettingsFragment.DeleteFingerprintDialog;
-import com.android.settings.testutils.shadow.ShadowFragment;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -37,10 +37,12 @@ import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.annotation.Config;
+import org.robolectric.annotation.Implementation;
+import org.robolectric.annotation.Implements;
 import org.robolectric.shadows.androidx.fragment.FragmentController;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(shadows = ShadowFragment.class)
+@Config(shadows = DeleteFingerprintDialogTest.ShadowFragment.class)
 public class DeleteFingerprintDialogTest {
 
     @Mock
@@ -75,4 +77,19 @@ public class DeleteFingerprintDialogTest {
 
         verify(mTarget, never()).deleteFingerPrint(mFingerprint);
     }
+
+    @Implements(Fragment.class)
+    public static class ShadowFragment {
+        private Fragment mTargetFragment;
+
+        @Implementation
+        protected void setTargetFragment(Fragment fragment, int requestCode) {
+            mTargetFragment = fragment;
+        }
+
+        @Implementation
+        protected Fragment getTargetFragment() {
+            return mTargetFragment;
+        }
+    }
 }
index 6cecd98..ded7d10 100644 (file)
@@ -53,6 +53,7 @@ import com.android.settings.applications.AppInfoBase;
 import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settings.testutils.shadow.ShadowDataUsageUtils;
 import com.android.settings.testutils.shadow.ShadowEntityHeaderController;
+import com.android.settings.testutils.shadow.ShadowFragment;
 import com.android.settings.testutils.shadow.ShadowRestrictedLockUtilsInternal;
 import com.android.settings.widget.EntityHeaderController;
 import com.android.settingslib.AppItem;
@@ -102,6 +103,7 @@ public class AppDataUsageTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void onCreate_appUid_shouldGetAppLabelFromAppInfo() throws NameNotFoundException {
         mFragment = spy(new AppDataUsage());
         final FragmentActivity activity = spy(Robolectric.setupActivity(FragmentActivity.class));
@@ -109,17 +111,17 @@ public class AppDataUsageTest {
         doReturn(activity).when(mFragment).getActivity();
         doReturn(RuntimeEnvironment.application).when(mFragment).getContext();
         ReflectionHelpers.setField(mFragment, "mDashboardFeatureProvider",
-            FakeFeatureFactory.setupForTest().dashboardFeatureProvider);
+                FakeFeatureFactory.setupForTest().dashboardFeatureProvider);
         final String packageName = "testPackage";
         final int uid = (Process.FIRST_APPLICATION_UID + Process.LAST_APPLICATION_UID) / 2;
-        doReturn(new String[] {packageName}).when(mPackageManager).getPackagesForUid(uid);
+        doReturn(new String[]{packageName}).when(mPackageManager).getPackagesForUid(uid);
         final String label = "testLabel";
         final AppItem appItem = new AppItem(uid);
         appItem.uids.put(uid, true);
         final ApplicationInfo info = spy(new ApplicationInfo());
         doReturn(label).when(info).loadLabel(mPackageManager);
         when(mPackageManager.getApplicationInfoAsUser(
-            eq(packageName), anyInt() /* flags */, anyInt() /* userId */)).thenReturn(info);
+                eq(packageName), anyInt() /* flags */, anyInt() /* userId */)).thenReturn(info);
         final Bundle args = new Bundle();
         args.putParcelable(AppDataUsage.ARG_APP_ITEM, appItem);
         args.putInt(AppInfoBase.ARG_PACKAGE_UID, uid);
@@ -131,10 +133,11 @@ public class AppDataUsageTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void onCreate_notAppUid_shouldGetAppLabelFromUidDetailProvider() {
         mFragment = spy(new AppDataUsage());
         ReflectionHelpers.setField(mFragment, "mDashboardFeatureProvider",
-            FakeFeatureFactory.setupForTest().dashboardFeatureProvider);
+                FakeFeatureFactory.setupForTest().dashboardFeatureProvider);
         doReturn(Robolectric.setupActivity(FragmentActivity.class)).when(mFragment).getActivity();
         doReturn(RuntimeEnvironment.application).when(mFragment).getContext();
         final UidDetailProvider uidDetailProvider = mock(UidDetailProvider.class);
@@ -144,7 +147,7 @@ public class AppDataUsageTest {
         final UidDetail uidDetail = new UidDetail();
         uidDetail.label = label;
         when(uidDetailProvider.getUidDetail(eq(uid), anyBoolean() /* blocking */)).
-            thenReturn(uidDetail);
+                thenReturn(uidDetail);
         final AppItem appItem = new AppItem(uid);
         appItem.uids.put(uid, true);
         final Bundle args = new Bundle();
@@ -166,7 +169,7 @@ public class AppDataUsageTest {
         mFragment = spy(new AppDataUsage());
 
         when(mFragment.getPreferenceManager())
-            .thenReturn(mock(PreferenceManager.class, RETURNS_DEEP_STUBS));
+                .thenReturn(mock(PreferenceManager.class, RETURNS_DEEP_STUBS));
         doReturn(mock(PreferenceScreen.class)).when(mFragment).getPreferenceScreen();
         ReflectionHelpers.setField(mFragment, "mAppItem", mock(AppItem.class));
 
@@ -177,7 +180,7 @@ public class AppDataUsageTest {
 
     @Test
     public void bindAppHeader_workApp_shouldSetWorkAppUid()
-        throws PackageManager.NameNotFoundException {
+            throws PackageManager.NameNotFoundException {
         final int fakeUserId = 100;
 
         mFragment = spy(new AppDataUsage());
@@ -198,7 +201,7 @@ public class AppDataUsageTest {
         when(mHeaderController.setHasAppInfoLink(anyBoolean())).thenReturn(mHeaderController);
 
         when(mFragment.getPreferenceManager())
-            .thenReturn(mock(PreferenceManager.class, RETURNS_DEEP_STUBS));
+                .thenReturn(mock(PreferenceManager.class, RETURNS_DEEP_STUBS));
         doReturn(mock(PreferenceScreen.class)).when(mFragment).getPreferenceScreen();
 
         mFragment.onViewCreated(new View(RuntimeEnvironment.application), new Bundle());
@@ -276,7 +279,7 @@ public class AppDataUsageTest {
         final long foregroundBytes = 5678L;
         final List<NetworkCycleDataForUid> appUsage = new ArrayList<>();
         appUsage.add(new NetworkCycleDataForUid.Builder()
-            .setBackgroundUsage(backgroundBytes).setForegroundUsage(foregroundBytes).build());
+                .setBackgroundUsage(backgroundBytes).setForegroundUsage(foregroundBytes).build());
         ReflectionHelpers.setField(mFragment, "mUsageData", appUsage);
         final Preference backgroundPref = mock(Preference.class);
         ReflectionHelpers.setField(mFragment, "mBackgroundUsage", backgroundPref);
@@ -291,7 +294,7 @@ public class AppDataUsageTest {
 
         verify(cycle).setVisible(true);
         verify(totalPref).setSummary(
-            DataUsageUtils.formatDataUsage(context, backgroundBytes + foregroundBytes));
+                DataUsageUtils.formatDataUsage(context, backgroundBytes + foregroundBytes));
         verify(backgroundPref).setSummary(DataUsageUtils.formatDataUsage(context, backgroundBytes));
         verify(foregroundPref).setSummary(DataUsageUtils.formatDataUsage(context, foregroundBytes));
     }
@@ -306,12 +309,12 @@ public class AppDataUsageTest {
         ReflectionHelpers.setField(mFragment, "mContext", context);
         ReflectionHelpers.setField(mFragment, "mAppItem", appItem);
         ReflectionHelpers.setField(mFragment, "mTemplate",
-            NetworkTemplate.buildTemplateWifiWildcard());
+                NetworkTemplate.buildTemplateWifiWildcard());
         final long end = System.currentTimeMillis();
         final long start = end - (DateUtils.WEEK_IN_MILLIS * 4);
 
         final NetworkCycleDataForUidLoader loader = (NetworkCycleDataForUidLoader)
-            mFragment.mUidDataCallbacks.onCreateLoader(0, Bundle.EMPTY);
+                mFragment.mUidDataCallbacks.onCreateLoader(0, Bundle.EMPTY);
 
         final List<Integer> uids = loader.getUids();
         assertThat(uids).hasSize(1);
@@ -331,12 +334,12 @@ public class AppDataUsageTest {
         ReflectionHelpers.setField(mFragment, "mContext", context);
         ReflectionHelpers.setField(mFragment, "mAppItem", appItem);
         ReflectionHelpers.setField(mFragment, "mTemplate",
-            NetworkTemplate.buildTemplateWifiWildcard());
+                NetworkTemplate.buildTemplateWifiWildcard());
         final long end = System.currentTimeMillis();
         final long start = end - (DateUtils.WEEK_IN_MILLIS * 4);
 
         final NetworkCycleDataForUidLoader loader = (NetworkCycleDataForUidLoader)
-            mFragment.mUidDataCallbacks.onCreateLoader(0, Bundle.EMPTY);
+                mFragment.mUidDataCallbacks.onCreateLoader(0, Bundle.EMPTY);
 
         final List<Integer> uids = loader.getUids();
         assertThat(uids).hasSize(3);
@@ -362,10 +365,10 @@ public class AppDataUsageTest {
         ReflectionHelpers.setField(mFragment, "mCycles", testCycles);
         ReflectionHelpers.setField(mFragment, "mAppItem", appItem);
         ReflectionHelpers.setField(mFragment, "mTemplate",
-            NetworkTemplate.buildTemplateWifiWildcard());
+                NetworkTemplate.buildTemplateWifiWildcard());
 
         final NetworkCycleDataForUidLoader loader = (NetworkCycleDataForUidLoader)
-            mFragment.mUidDataCallbacks.onCreateLoader(0 /* id */, Bundle.EMPTY /* args */);
+                mFragment.mUidDataCallbacks.onCreateLoader(0 /* id */, Bundle.EMPTY /* args */);
 
         final ArrayList<Long> cycles = loader.getCycles();
         assertThat(cycles).hasSize(2);
@@ -409,13 +412,14 @@ public class AppDataUsageTest {
     }
 
     @Test
-    @Config(shadows = {ShadowDataUsageUtils.class, ShadowSubscriptionManager.class})
+    @Config(shadows = {ShadowDataUsageUtils.class, ShadowSubscriptionManager.class,
+            ShadowFragment.class})
     public void onCreate_noNetworkTemplateAndInvalidDataSubscription_shouldUseWifiTemplate() {
         ShadowDataUsageUtils.IS_MOBILE_DATA_SUPPORTED = true;
         ShadowDataUsageUtils.IS_WIFI_SUPPORTED = true;
         ShadowDataUsageUtils.HAS_SIM = false;
         ShadowSubscriptionManager.setDefaultDataSubscriptionId(
-            SubscriptionManager.INVALID_SUBSCRIPTION_ID);
+                SubscriptionManager.INVALID_SUBSCRIPTION_ID);
         mFragment = spy(new AppDataUsage());
         doReturn(Robolectric.setupActivity(FragmentActivity.class)).when(mFragment).getActivity();
         doReturn(RuntimeEnvironment.application).when(mFragment).getContext();
@@ -424,7 +428,7 @@ public class AppDataUsageTest {
         doReturn(new UidDetail()).when(uidDetailProvider).getUidDetail(anyInt(), anyBoolean());
 
         ReflectionHelpers.setField(mFragment, "mDashboardFeatureProvider",
-            FakeFeatureFactory.setupForTest().dashboardFeatureProvider);
+                FakeFeatureFactory.setupForTest().dashboardFeatureProvider);
         final Bundle args = new Bundle();
         args.putInt(AppInfoBase.ARG_PACKAGE_UID, 123123);
         mFragment.setArguments(args);
@@ -432,6 +436,6 @@ public class AppDataUsageTest {
         mFragment.onCreate(Bundle.EMPTY);
 
         assertThat(mFragment.mTemplate.getMatchRule())
-            .isEqualTo(NetworkTemplate.MATCH_WIFI_WILDCARD);
+                .isEqualTo(NetworkTemplate.MATCH_WIFI_WILDCARD);
     }
 }
index 33ae064..2c0155f 100644 (file)
@@ -45,6 +45,7 @@ import androidx.preference.Preference;
 import androidx.preference.PreferenceManager;
 import androidx.preference.SwitchPreference;
 
+import com.android.settings.testutils.shadow.ShadowFragment;
 import com.android.settingslib.NetworkPolicyEditor;
 import com.android.settingslib.widget.FooterPreference;
 import com.android.settingslib.widget.FooterPreferenceMixinCompat;
@@ -56,6 +57,7 @@ import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
 import org.robolectric.util.ReflectionHelpers;
 
 @RunWith(RobolectricTestRunner.class)
@@ -142,6 +144,7 @@ public class BillingCycleSettingsTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void onCreate_emptyArguments_shouldSetDefaultNetworkTemplate() {
         final BillingCycleSettings billingCycleSettings = spy(new BillingCycleSettings());
         when(billingCycleSettings.getContext()).thenReturn(mContext);
index 90dcf71..de11aa9 100644 (file)
@@ -38,6 +38,7 @@ import androidx.preference.PreferenceScreen;
 import com.android.settings.deviceinfo.BuildNumberPreferenceController;
 import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settings.testutils.shadow.ShadowConnectivityManager;
+import com.android.settings.testutils.shadow.ShadowFragment;
 import com.android.settings.testutils.shadow.ShadowUserManager;
 import com.android.settingslib.core.AbstractPreferenceController;
 
@@ -90,6 +91,7 @@ public class MyDeviceInfoFragmentTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void onCreate_fromSearch_shouldNotOverrideInitialExpandedCount() {
         final Bundle args = new Bundle();
         args.putString(EXTRA_FRAGMENT_ARG_KEY, "search_key");
index 8624eb9..2253165 100644 (file)
@@ -46,6 +46,7 @@ import androidx.preference.SwitchPreference;
 
 import com.android.settings.R;
 import com.android.settings.network.ApnEditor.ApnData;
+import com.android.settings.testutils.shadow.ShadowFragment;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -58,6 +59,7 @@ import org.mockito.MockitoAnnotations;
 import org.robolectric.Robolectric;
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
 
 @RunWith(RobolectricTestRunner.class)
 public class ApnEditorTest {
@@ -455,6 +457,7 @@ public class ApnEditorTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void onCreate_noAction_shouldFinishAndNoCrash() {
         doNothing().when(mApnEditorUT).addPreferencesFromResource(anyInt());
 
index a70d4d6..4c50e1a 100644 (file)
@@ -16,6 +16,8 @@
 
 package com.android.settings.testutils.shadow;
 
+import android.os.Bundle;
+
 import androidx.fragment.app.Fragment;
 
 import org.robolectric.annotation.Implementation;
@@ -27,6 +29,11 @@ public class ShadowFragment {
     private Fragment mTargetFragment;
 
     @Implementation
+    public void onCreate(Bundle icicle) {
+        // do nothing
+    }
+
+    @Implementation
     protected void setTargetFragment(Fragment fragment, int requestCode) {
         mTargetFragment = fragment;
     }
index d2e3566..a16a576 100644 (file)
@@ -50,6 +50,7 @@ import com.android.settings.R;
 import com.android.settings.datausage.DataUsagePreference;
 import com.android.settings.search.SearchIndexableRaw;
 import com.android.settings.testutils.shadow.ShadowDataUsageUtils;
+import com.android.settings.testutils.shadow.ShadowFragment;
 import com.android.settingslib.wifi.AccessPoint;
 import com.android.settingslib.wifi.WifiTracker;
 
@@ -247,7 +248,7 @@ public class WifiSettingsTest {
     }
 
     @Test
-    @Config(shadows = {ShadowDataUsageUtils.class})
+    @Config(shadows = {ShadowDataUsageUtils.class, ShadowFragment.class})
     public void checkDataUsagePreference_perferenceInvisibleIfWifiNotSupported() {
         setUpForOnCreate();
         ShadowDataUsageUtils.IS_WIFI_SUPPORTED = false;
@@ -258,7 +259,7 @@ public class WifiSettingsTest {
     }
 
     @Test
-    @Config(shadows = {ShadowDataUsageUtils.class})
+    @Config(shadows = {ShadowDataUsageUtils.class, ShadowFragment.class})
     public void checkDataUsagePreference_perferenceVisibleIfWifiSupported() {
         setUpForOnCreate();
         ShadowDataUsageUtils.IS_WIFI_SUPPORTED = true;
index 25fa737..d7b79b1 100644 (file)
@@ -41,6 +41,7 @@ import androidx.recyclerview.widget.RecyclerView.OnScrollListener;
 
 import com.android.settings.R;
 import com.android.settings.testutils.shadow.ShadowDisclaimerItemFactory;
+import com.android.settings.testutils.shadow.ShadowFragment;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -57,7 +58,7 @@ import org.robolectric.Robolectric;
 import org.robolectric.RobolectricTestRunner;
 
 @RunWith(RobolectricTestRunner.class)
-@Config(shadows = ShadowDisclaimerItemFactory.class)
+@Config(shadows = {ShadowDisclaimerItemFactory.class, ShadowFragment.class})
 public class WifiCallingDisclaimerFragmentTest {
 
     @Mock
index ae88231..6fc2551 100644 (file)
@@ -55,6 +55,7 @@ import com.android.settings.R;
 import com.android.settings.SettingsActivity;
 import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settings.testutils.shadow.SettingsShadowResources;
+import com.android.settings.testutils.shadow.ShadowFragment;
 import com.android.settings.widget.SwitchBar;
 import com.android.settings.widget.ToggleSwitch;
 
@@ -67,7 +68,9 @@ import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
 import org.robolectric.util.ReflectionHelpers;
+import org.robolectric.annotation.Config;
 
+@Config(shadows = ShadowFragment.class)
 @RunWith(RobolectricTestRunner.class)
 public class WifiCallingSettingsForSubTest {
     private static final String BUTTON_WFC_MODE = "wifi_calling_mode";
index cdc74b3..e501689 100644 (file)
@@ -39,6 +39,7 @@ import androidx.fragment.app.FragmentActivity;
 import androidx.preference.PreferenceScreen;
 
 import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.shadow.ShadowFragment;
 import com.android.settings.testutils.shadow.ShadowWifiManager;
 
 import org.junit.Before;
@@ -115,6 +116,7 @@ public class WifiTetherSettingsTest {
     }
 
     @Test
+    @Config(shadows = ShadowFragment.class)
     public void startFragment_notAdminUser_shouldRemoveAllPreferences() {
         final WifiTetherSettings settings = spy(new WifiTetherSettings());
         final FragmentActivity activity = mock(FragmentActivity.class);