Loading src/com/android/settings/security/LockscreenDashboardFragment.java +9 −2 Original line number Diff line number Diff line Loading @@ -19,6 +19,8 @@ package com.android.settings.security; import android.content.Context; import android.provider.SearchIndexableResource; import androidx.annotation.VisibleForTesting; import com.android.internal.hardware.AmbientDisplayConfiguration; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.settings.R; Loading @@ -29,6 +31,7 @@ import com.android.settings.gestures.DoubleTapScreenPreferenceController; import com.android.settings.gestures.PickupGesturePreferenceController; import com.android.settings.notification.LockScreenNotificationPreferenceController; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.security.screenlock.LockScreenPreferenceController; import com.android.settingslib.core.AbstractPreferenceController; import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.search.SearchIndexable; Loading @@ -37,8 +40,6 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; import androidx.annotation.VisibleForTesting; /** * Settings screen for lock screen preference */ Loading Loading @@ -157,5 +158,11 @@ public class LockscreenDashboardFragment extends DashboardFragment niks.add(KEY_LOCK_SCREEN_NOTIFICATON_WORK_PROFILE_HEADER); return niks; } @Override protected boolean isPageSearchEnabled(Context context) { return new LockScreenPreferenceController(context, "anykey") .isAvailable(); } }; } tests/robotests/src/com/android/settings/security/LockscreenDashboardFragmentTest.java +22 −0 Original line number Diff line number Diff line Loading @@ -17,17 +17,22 @@ package com.android.settings.security; import static com.google.common.truth.Truth.assertThat; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.Context; import com.android.internal.widget.LockPatternUtils; import com.android.settings.display.AmbientDisplayAlwaysOnPreferenceController; import com.android.settings.display.AmbientDisplayNotificationsPreferenceController; import com.android.settings.gestures.DoubleTapScreenPreferenceController; import com.android.settings.gestures.PickupGesturePreferenceController; import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.XmlTestUtils; import com.android.settings.testutils.shadow.ShadowLockPatternUtils; Loading @@ -37,6 +42,7 @@ import com.android.settingslib.core.AbstractPreferenceController; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; Loading @@ -49,12 +55,18 @@ import java.util.List; }) public class LockscreenDashboardFragmentTest { @Mock private LockPatternUtils mLockPatternUtils; private FakeFeatureFactory mFeatureFactory; private TestFragment mTestFragment; private Context mContext; @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); mFeatureFactory = FakeFeatureFactory.setupForTest(); when(mFeatureFactory.securityFeatureProvider.getLockPatternUtils(any(Context.class))) .thenReturn(mLockPatternUtils); mContext = RuntimeEnvironment.application; mTestFragment = spy(new TestFragment()); } Loading Loading @@ -112,6 +124,16 @@ public class LockscreenDashboardFragmentTest { verify(controller).setConfig(any()); } @Test public void isPageSearchable_notLocked_shouldNotBeSearchable() { when(mLockPatternUtils.isSecure(anyInt())).thenReturn(false); when(mLockPatternUtils.isLockScreenDisabled(anyInt())).thenReturn(true); assertThat(LockscreenDashboardFragment.SEARCH_INDEX_DATA_PROVIDER .getNonIndexableKeys(mContext)) .contains("security_lockscreen_settings_screen"); } public static class TestFragment extends LockscreenDashboardFragment { @Override protected <T extends AbstractPreferenceController> T use(Class<T> clazz) { Loading Loading
src/com/android/settings/security/LockscreenDashboardFragment.java +9 −2 Original line number Diff line number Diff line Loading @@ -19,6 +19,8 @@ package com.android.settings.security; import android.content.Context; import android.provider.SearchIndexableResource; import androidx.annotation.VisibleForTesting; import com.android.internal.hardware.AmbientDisplayConfiguration; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.settings.R; Loading @@ -29,6 +31,7 @@ import com.android.settings.gestures.DoubleTapScreenPreferenceController; import com.android.settings.gestures.PickupGesturePreferenceController; import com.android.settings.notification.LockScreenNotificationPreferenceController; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.security.screenlock.LockScreenPreferenceController; import com.android.settingslib.core.AbstractPreferenceController; import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.search.SearchIndexable; Loading @@ -37,8 +40,6 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; import androidx.annotation.VisibleForTesting; /** * Settings screen for lock screen preference */ Loading Loading @@ -157,5 +158,11 @@ public class LockscreenDashboardFragment extends DashboardFragment niks.add(KEY_LOCK_SCREEN_NOTIFICATON_WORK_PROFILE_HEADER); return niks; } @Override protected boolean isPageSearchEnabled(Context context) { return new LockScreenPreferenceController(context, "anykey") .isAvailable(); } }; }
tests/robotests/src/com/android/settings/security/LockscreenDashboardFragmentTest.java +22 −0 Original line number Diff line number Diff line Loading @@ -17,17 +17,22 @@ package com.android.settings.security; import static com.google.common.truth.Truth.assertThat; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.Context; import com.android.internal.widget.LockPatternUtils; import com.android.settings.display.AmbientDisplayAlwaysOnPreferenceController; import com.android.settings.display.AmbientDisplayNotificationsPreferenceController; import com.android.settings.gestures.DoubleTapScreenPreferenceController; import com.android.settings.gestures.PickupGesturePreferenceController; import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.XmlTestUtils; import com.android.settings.testutils.shadow.ShadowLockPatternUtils; Loading @@ -37,6 +42,7 @@ import com.android.settingslib.core.AbstractPreferenceController; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; Loading @@ -49,12 +55,18 @@ import java.util.List; }) public class LockscreenDashboardFragmentTest { @Mock private LockPatternUtils mLockPatternUtils; private FakeFeatureFactory mFeatureFactory; private TestFragment mTestFragment; private Context mContext; @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); mFeatureFactory = FakeFeatureFactory.setupForTest(); when(mFeatureFactory.securityFeatureProvider.getLockPatternUtils(any(Context.class))) .thenReturn(mLockPatternUtils); mContext = RuntimeEnvironment.application; mTestFragment = spy(new TestFragment()); } Loading Loading @@ -112,6 +124,16 @@ public class LockscreenDashboardFragmentTest { verify(controller).setConfig(any()); } @Test public void isPageSearchable_notLocked_shouldNotBeSearchable() { when(mLockPatternUtils.isSecure(anyInt())).thenReturn(false); when(mLockPatternUtils.isLockScreenDisabled(anyInt())).thenReturn(true); assertThat(LockscreenDashboardFragment.SEARCH_INDEX_DATA_PROVIDER .getNonIndexableKeys(mContext)) .contains("security_lockscreen_settings_screen"); } public static class TestFragment extends LockscreenDashboardFragment { @Override protected <T extends AbstractPreferenceController> T use(Class<T> clazz) { Loading