Hides Screen Attention setting on unsupported devices
Bug: 170971817 Test: make RunSettingsRoboTests Change-Id: I8aa7882be9a1ae483e8e7500059a18859b20d42b
This commit is contained in:
@@ -23,14 +23,19 @@ import static androidx.test.core.app.ApplicationProvider.getApplicationContext;
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.never;
|
||||
import static org.mockito.Mockito.spy;
|
||||
import static org.mockito.Mockito.verify;
|
||||
|
||||
import android.app.admin.DevicePolicyManager;
|
||||
import android.content.ContentResolver;
|
||||
import android.content.Context;
|
||||
import android.content.res.Resources;
|
||||
import android.provider.SearchIndexableResource;
|
||||
import android.provider.Settings;
|
||||
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.R;
|
||||
|
||||
import org.junit.Before;
|
||||
@@ -54,6 +59,15 @@ public class ScreenTimeoutSettingsTest {
|
||||
@Mock
|
||||
private Resources mResources;
|
||||
|
||||
@Mock
|
||||
private PreferenceScreen mPreferenceScreen;
|
||||
|
||||
@Mock
|
||||
AdaptiveSleepPermissionPreferenceController mPermissionPreferenceController;
|
||||
|
||||
@Mock
|
||||
AdaptiveSleepPreferenceController mAdaptiveSleepPreferenceController;
|
||||
|
||||
@Before
|
||||
public void setup() {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
@@ -63,8 +77,17 @@ public class ScreenTimeoutSettingsTest {
|
||||
|
||||
doReturn(TIMEOUT_ENTRIES).when(mResources).getStringArray(R.array.screen_timeout_entries);
|
||||
doReturn(TIMEOUT_VALUES).when(mResources).getStringArray(R.array.screen_timeout_entries);
|
||||
doReturn(true).when(mResources).getBoolean(
|
||||
com.android.internal.R.bool.config_adaptive_sleep_available);
|
||||
|
||||
doReturn(null).when(mContext).getSystemService(DevicePolicyManager.class);
|
||||
|
||||
doReturn(mResources).when(mSettings).getResources();
|
||||
doReturn(mContext).when(mSettings).getContext();
|
||||
doReturn(mPreferenceScreen).when(mSettings).getPreferenceScreen();
|
||||
|
||||
mSettings.mAdaptiveSleepController = mAdaptiveSleepPreferenceController;
|
||||
mSettings.mAdaptiveSleepPermissionController = mPermissionPreferenceController;
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -87,6 +110,23 @@ public class ScreenTimeoutSettingsTest {
|
||||
assertThat(key).isEqualTo(TIMEOUT_VALUES[1]);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateCandidates_screenAttentionAvailable_showAdaptiveSleepPreference() {
|
||||
mSettings.updateCandidates();
|
||||
|
||||
verify(mSettings.mAdaptiveSleepController).addToScreen(mPreferenceScreen);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateCandidates_screenAttentionNotAvailable_doNotShowAdaptiveSleepPreference() {
|
||||
doReturn(false).when(mResources).getBoolean(
|
||||
com.android.internal.R.bool.config_adaptive_sleep_available);
|
||||
|
||||
mSettings.updateCandidates();
|
||||
|
||||
verify(mSettings.mAdaptiveSleepController, never()).addToScreen(mPreferenceScreen);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void setDefaultKey_controlCurrentScreenTimeout() {
|
||||
mSettings.setDefaultKey(TIMEOUT_VALUES[0]);
|
||||
|
Reference in New Issue
Block a user