diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java index 7328c76497b..e80b253611a 100644 --- a/src/com/android/settings/SettingsActivity.java +++ b/src/com/android/settings/SettingsActivity.java @@ -813,7 +813,6 @@ public class SettingsActivity extends SettingsDrawerActivity || somethingChanged; final boolean showDev = DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(this) - && !um.hasUserRestriction(UserManager.DISALLOW_DEBUGGING_FEATURES) && !Utils.isMonkeyRunning(); somethingChanged = setTileEnabled(new ComponentName(packageName, diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java index fd136c1a6c3..532522c3db3 100644 --- a/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java @@ -37,7 +37,9 @@ import com.android.settings.TestConfig; import com.android.settings.applications.ProcStatsData; import com.android.settings.applications.ProcessStatsDetail; import com.android.settings.testutils.SettingsRobolectricTestRunner; +import com.android.settings.testutils.shadow.ShadowUserManager; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -48,7 +50,9 @@ import org.robolectric.annotation.Config; import org.robolectric.util.ReflectionHelpers; @RunWith(SettingsRobolectricTestRunner.class) -@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) +@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION, shadows = { + ShadowUserManager.class +}) public class AppMemoryPreferenceControllerTest { @Mock @@ -67,6 +71,7 @@ public class AppMemoryPreferenceControllerTest { public void setUp() { MockitoAnnotations.initMocks(this); mContext = RuntimeEnvironment.application; + ShadowUserManager.getShadow().setIsAdminUser(true); mController = spy(new AppMemoryPreferenceController(mContext, mFragment, null /* lifecycle */)); when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference); @@ -75,6 +80,11 @@ public class AppMemoryPreferenceControllerTest { when(mFragment.getActivity()).thenReturn(mActivity); } + @After + public void tearDown() { + ShadowUserManager.getShadow().reset(); + } + @Test public void getAvailabilityStatus_developmentSettingsEnabled_shouldReturnAvailable() { Settings.Global.putInt(mContext.getContentResolver(), diff --git a/tests/robotests/src/com/android/settings/development/DevelopmentSettingsDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/development/DevelopmentSettingsDashboardFragmentTest.java index 881ee84f8c7..640e9d5e338 100644 --- a/tests/robotests/src/com/android/settings/development/DevelopmentSettingsDashboardFragmentTest.java +++ b/tests/robotests/src/com/android/settings/development/DevelopmentSettingsDashboardFragmentTest.java @@ -17,7 +17,6 @@ package com.android.settings.development; import static com.google.common.truth.Truth.assertThat; - import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; @@ -33,6 +32,7 @@ import com.android.settings.R; import com.android.settings.TestConfig; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.shadow.SettingsShadowResources; +import com.android.settings.testutils.shadow.ShadowUserManager; import com.android.settings.widget.SwitchBar; import com.android.settings.widget.ToggleSwitch; import com.android.settingslib.development.AbstractEnableAdbPreferenceController; @@ -52,7 +52,9 @@ import org.robolectric.util.ReflectionHelpers; import java.util.List; @RunWith(SettingsRobolectricTestRunner.class) -@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) +@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION, shadows = { + ShadowUserManager.class +}) public class DevelopmentSettingsDashboardFragmentTest { private SwitchBar mSwitchBar; @@ -68,11 +70,13 @@ public class DevelopmentSettingsDashboardFragmentTest { mSwitch = mSwitchBar.getSwitch(); mDashboard = spy(new DevelopmentSettingsDashboardFragment()); ReflectionHelpers.setField(mDashboard, "mSwitchBar", mSwitchBar); + ShadowUserManager.getShadow().setIsAdminUser(true); } @After public void tearDown() { ShadowEnableDevelopmentSettingWarningDialog.reset(); + ShadowUserManager.getShadow().reset(); } @Test @@ -101,7 +105,7 @@ public class DevelopmentSettingsDashboardFragmentTest { SettingsShadowResources.class, SettingsShadowResources.SettingsShadowTheme.class }) - public void searchIndex_pageDisabled_shouldAddAllKeysToNonIndexable() { + public void searchIndex_pageDisabledBySetting_shouldAddAllKeysToNonIndexable() { final Context appContext = RuntimeEnvironment.application; DevelopmentSettingsEnabler.setDevelopmentSettingsEnabled(appContext, false); @@ -109,7 +113,24 @@ public class DevelopmentSettingsDashboardFragmentTest { DevelopmentSettingsDashboardFragment.SEARCH_INDEX_DATA_PROVIDER .getNonIndexableKeys(appContext); - assertThat(nonIndexableKeys).contains("development_prefs_screen"); + assertThat(nonIndexableKeys).contains("enable_adb"); + } + + @Test + @Config(shadows = { + SettingsShadowResources.class, + SettingsShadowResources.SettingsShadowTheme.class + }) + public void searchIndex_pageDisabledForNonAdmin_shouldAddAllKeysToNonIndexable() { + final Context appContext = RuntimeEnvironment.application; + DevelopmentSettingsEnabler.setDevelopmentSettingsEnabled(appContext, true); + ShadowUserManager.getShadow().setIsAdminUser(false); + + final List nonIndexableKeys = + DevelopmentSettingsDashboardFragment.SEARCH_INDEX_DATA_PROVIDER + .getNonIndexableKeys(appContext); + + assertThat(nonIndexableKeys).contains("enable_adb"); } @Test diff --git a/tests/robotests/src/com/android/settings/development/DevelopmentSwitchBarControllerTest.java b/tests/robotests/src/com/android/settings/development/DevelopmentSwitchBarControllerTest.java index a5dfa56d3c6..95fd0ddeceb 100644 --- a/tests/robotests/src/com/android/settings/development/DevelopmentSwitchBarControllerTest.java +++ b/tests/robotests/src/com/android/settings/development/DevelopmentSwitchBarControllerTest.java @@ -28,6 +28,7 @@ import android.content.Context; import com.android.settings.TestConfig; import com.android.settings.testutils.SettingsRobolectricTestRunner; +import com.android.settings.testutils.shadow.ShadowUserManager; import com.android.settings.testutils.shadow.ShadowUtils; import com.android.settings.widget.SwitchBar; import com.android.settingslib.core.lifecycle.Lifecycle; @@ -47,7 +48,8 @@ import java.util.ArrayList; @RunWith(SettingsRobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION, shadows = { - ShadowUtils.class + ShadowUtils.class, + ShadowUserManager.class }) public class DevelopmentSwitchBarControllerTest { @@ -63,6 +65,7 @@ public class DevelopmentSwitchBarControllerTest { public void setUp() { MockitoAnnotations.initMocks(this); mContext = RuntimeEnvironment.application; + ShadowUserManager.getShadow().setIsAdminUser(true); mLifecycleOwner = () -> mLifecycle; mLifecycle = new Lifecycle(mLifecycleOwner); mSwitchBar = new SwitchBar(mContext); @@ -72,6 +75,7 @@ public class DevelopmentSwitchBarControllerTest { @After public void tearDown() { ShadowUtils.reset(); + ShadowUserManager.getShadow().reset(); } @Test diff --git a/tests/robotests/src/com/android/settings/deviceinfo/BuildNumberPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/deviceinfo/BuildNumberPreferenceControllerTest.java index ee5d5d05f78..17122ae1afb 100644 --- a/tests/robotests/src/com/android/settings/deviceinfo/BuildNumberPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/deviceinfo/BuildNumberPreferenceControllerTest.java @@ -43,6 +43,7 @@ import com.android.settings.search.DatabaseIndexingManager; import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.shadow.ShadowUtils; +import com.android.settings.testutils.shadow.ShadowUserManager; import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.development.DevelopmentSettingsEnabler; @@ -60,7 +61,8 @@ import org.robolectric.util.ReflectionHelpers; @RunWith(SettingsRobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION, shadows = { - ShadowUtils.class + ShadowUtils.class, + ShadowUserManager.class, }) public class BuildNumberPreferenceControllerTest { @@ -84,6 +86,7 @@ public class BuildNumberPreferenceControllerTest { @Before public void setUp() { MockitoAnnotations.initMocks(this); + ShadowUserManager.getShadow().setIsAdminUser(true); mFactory = FakeFeatureFactory.setupForTest(); mLifecycleOwner = () -> mLifecycle; mLifecycle = new Lifecycle(mLifecycleOwner); @@ -98,6 +101,7 @@ public class BuildNumberPreferenceControllerTest { @After public void tearDown() { ShadowUtils.reset(); + ShadowUserManager.getShadow().reset(); } @Test