Loading res/values/config.xml +3 −0 Original line number Diff line number Diff line Loading @@ -131,4 +131,7 @@ <!-- List of a11y components on the device allowed to be enabled by Settings Slices --> <string-array name="config_settings_slices_accessibility_components" translatable="false"/> <!-- Whether or not to show the night light suggestion. --> <bool name="config_night_light_suggestion_enabled">true</bool> </resources> src/com/android/settings/display/NightDisplayPreferenceController.java +7 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ import android.content.Context; import com.android.internal.app.ColorDisplayController; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.core.AbstractPreferenceController; import com.android.settings.R; public class NightDisplayPreferenceController extends AbstractPreferenceController implements PreferenceControllerMixin { Loading @@ -29,6 +30,12 @@ public class NightDisplayPreferenceController extends AbstractPreferenceControll } public static boolean isSuggestionComplete(Context context) { final boolean isEnabled = context.getResources().getBoolean( R.bool.config_night_light_suggestion_enabled); // The suggestion is always complete if not enabled. if (!isEnabled) { return true; } final ColorDisplayController controller = new ColorDisplayController(context); return controller.getAutoMode() != ColorDisplayController.AUTO_MODE_DISABLED; } Loading tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java +0 −7 Original line number Diff line number Diff line Loading @@ -162,13 +162,6 @@ public class SuggestionFeatureProviderImplTest { assertThat(suggestions).hasSize(3); } @Test public void nightDisplaySuggestion_isNotCompleted_byDefault() { final ComponentName componentName = new ComponentName(mContext, NightDisplaySuggestionActivity.class); assertThat(mProvider.isSuggestionComplete(mContext, componentName)).isFalse(); } @Test public void testGetSmartSuggestionEnabledTaggedData_disabled() { assertThat(mProvider.getLoggingTaggedData(mContext)).asList().containsExactly( Loading tests/robotests/src/com/android/settings/display/NightDisplayPreferenceControllerTest.java +20 −0 Original line number Diff line number Diff line Loading @@ -6,15 +6,22 @@ import android.app.Application; import android.content.ComponentName; import android.provider.Settings.Secure; import com.android.internal.app.ColorDisplayController; import com.android.settings.R; import com.android.settings.Settings.NightDisplaySuggestionActivity; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.shadow.SettingsShadowResources; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.annotation.Config; import org.robolectric.RuntimeEnvironment; @RunWith(SettingsRobolectricTestRunner.class) @Config(shadows = { SettingsShadowResources.class }) public class NightDisplayPreferenceControllerTest { private NightDisplayPreferenceController mPreferenceController; Loading @@ -27,6 +34,7 @@ public class NightDisplayPreferenceControllerTest { @After public void tearDown() { mPreferenceController = null; SettingsShadowResources.reset(); } @Test Loading Loading @@ -58,4 +66,16 @@ public class NightDisplayPreferenceControllerTest { new ComponentName(context, NightDisplaySuggestionActivity.class); assertThat(mPreferenceController.isSuggestionComplete(context)).isTrue(); } @Test public void nightDisplaySuggestion_isCompleted_ifDisabled() { final Application context = RuntimeEnvironment.application; Secure.putInt(context.getContentResolver(), Secure.NIGHT_DISPLAY_AUTO_MODE, ColorDisplayController.AUTO_MODE_DISABLED); SettingsShadowResources.overrideResource(R.bool.config_night_light_suggestion_enabled, false); final ComponentName componentName = new ComponentName(context, NightDisplaySuggestionActivity.class); assertThat(mPreferenceController.isSuggestionComplete(context)).isTrue(); } } Loading
res/values/config.xml +3 −0 Original line number Diff line number Diff line Loading @@ -131,4 +131,7 @@ <!-- List of a11y components on the device allowed to be enabled by Settings Slices --> <string-array name="config_settings_slices_accessibility_components" translatable="false"/> <!-- Whether or not to show the night light suggestion. --> <bool name="config_night_light_suggestion_enabled">true</bool> </resources>
src/com/android/settings/display/NightDisplayPreferenceController.java +7 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ import android.content.Context; import com.android.internal.app.ColorDisplayController; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.core.AbstractPreferenceController; import com.android.settings.R; public class NightDisplayPreferenceController extends AbstractPreferenceController implements PreferenceControllerMixin { Loading @@ -29,6 +30,12 @@ public class NightDisplayPreferenceController extends AbstractPreferenceControll } public static boolean isSuggestionComplete(Context context) { final boolean isEnabled = context.getResources().getBoolean( R.bool.config_night_light_suggestion_enabled); // The suggestion is always complete if not enabled. if (!isEnabled) { return true; } final ColorDisplayController controller = new ColorDisplayController(context); return controller.getAutoMode() != ColorDisplayController.AUTO_MODE_DISABLED; } Loading
tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java +0 −7 Original line number Diff line number Diff line Loading @@ -162,13 +162,6 @@ public class SuggestionFeatureProviderImplTest { assertThat(suggestions).hasSize(3); } @Test public void nightDisplaySuggestion_isNotCompleted_byDefault() { final ComponentName componentName = new ComponentName(mContext, NightDisplaySuggestionActivity.class); assertThat(mProvider.isSuggestionComplete(mContext, componentName)).isFalse(); } @Test public void testGetSmartSuggestionEnabledTaggedData_disabled() { assertThat(mProvider.getLoggingTaggedData(mContext)).asList().containsExactly( Loading
tests/robotests/src/com/android/settings/display/NightDisplayPreferenceControllerTest.java +20 −0 Original line number Diff line number Diff line Loading @@ -6,15 +6,22 @@ import android.app.Application; import android.content.ComponentName; import android.provider.Settings.Secure; import com.android.internal.app.ColorDisplayController; import com.android.settings.R; import com.android.settings.Settings.NightDisplaySuggestionActivity; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.shadow.SettingsShadowResources; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.annotation.Config; import org.robolectric.RuntimeEnvironment; @RunWith(SettingsRobolectricTestRunner.class) @Config(shadows = { SettingsShadowResources.class }) public class NightDisplayPreferenceControllerTest { private NightDisplayPreferenceController mPreferenceController; Loading @@ -27,6 +34,7 @@ public class NightDisplayPreferenceControllerTest { @After public void tearDown() { mPreferenceController = null; SettingsShadowResources.reset(); } @Test Loading Loading @@ -58,4 +66,16 @@ public class NightDisplayPreferenceControllerTest { new ComponentName(context, NightDisplaySuggestionActivity.class); assertThat(mPreferenceController.isSuggestionComplete(context)).isTrue(); } @Test public void nightDisplaySuggestion_isCompleted_ifDisabled() { final Application context = RuntimeEnvironment.application; Secure.putInt(context.getContentResolver(), Secure.NIGHT_DISPLAY_AUTO_MODE, ColorDisplayController.AUTO_MODE_DISABLED); SettingsShadowResources.overrideResource(R.bool.config_night_light_suggestion_enabled, false); final ComponentName componentName = new ComponentName(context, NightDisplaySuggestionActivity.class); assertThat(mPreferenceController.isSuggestionComplete(context)).isTrue(); } }