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

Commit 39a5eb5f authored by Fan Zhang's avatar Fan Zhang Committed by Android (Google) Code Review
Browse files

Merge "Move restriction check for dev settings into controller"

parents ce21e7a9 155d6829
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -808,7 +808,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,
+11 −1
Original line number Diff line number Diff line
@@ -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(),
+25 −4
Original line number Diff line number Diff line
@@ -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<String> nonIndexableKeys =
                DevelopmentSettingsDashboardFragment.SEARCH_INDEX_DATA_PROVIDER
                        .getNonIndexableKeys(appContext);

        assertThat(nonIndexableKeys).contains("enable_adb");
    }

    @Test
+5 −1
Original line number Diff line number Diff line
@@ -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
+5 −1
Original line number Diff line number Diff line
@@ -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