Move vibrate while unlocked behind a flag
Keep this feature disabled for the initial release.
Test: atest NotificationAttentionHelperTest
Bug: 270456865
Change-Id: Ia80cc0c147bbc94fa5faf8e2f12a339a9355d332
diff --git a/src/com/android/settings/notification/PoliteNotifVibrateUnlockedToggleController.java b/src/com/android/settings/notification/PoliteNotifVibrateUnlockedToggleController.java
index aaa8f87..dfdd649 100644
--- a/src/com/android/settings/notification/PoliteNotifVibrateUnlockedToggleController.java
+++ b/src/com/android/settings/notification/PoliteNotifVibrateUnlockedToggleController.java
@@ -40,7 +40,7 @@
@Override
public int getAvailabilityStatus() {
// TODO: b/291897570 - remove this when the feature flag is removed!
- if (!Flags.politeNotifications()) {
+ if (!Flags.politeNotifications() || !Flags.vibrateWhileUnlocked()) {
return CONDITIONALLY_UNAVAILABLE;
}
return mContext.getSystemService(Vibrator.class).hasVibrator() ? AVAILABLE
diff --git a/tests/robotests/src/com/android/settings/notification/PoliteNotifVibrateUnlockedToggleControllerTest.java b/tests/robotests/src/com/android/settings/notification/PoliteNotifVibrateUnlockedToggleControllerTest.java
index f92ed25..4d546ec 100644
--- a/tests/robotests/src/com/android/settings/notification/PoliteNotifVibrateUnlockedToggleControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/PoliteNotifVibrateUnlockedToggleControllerTest.java
@@ -64,6 +64,7 @@
public void isAvailable_flagEnabled_vibrationSupported_shouldReturnTrue() {
// TODO: b/291907312 - remove feature flags
mSetFlagsRule.enableFlags(Flags.FLAG_POLITE_NOTIFICATIONS);
+ mSetFlagsRule.enableFlags(Flags.FLAG_VIBRATE_WHILE_UNLOCKED);
when(mVibrator.hasVibrator()).thenReturn(true);
assertThat(mController.isAvailable()).isTrue();
assertThat(mController.getAvailabilityStatus()).isEqualTo(
@@ -74,6 +75,7 @@
public void isAvailable_flagEnabled_vibrationNotSupported_shouldReturnFalse() {
// TODO: b/291907312 - remove feature flags
mSetFlagsRule.enableFlags(Flags.FLAG_POLITE_NOTIFICATIONS);
+ mSetFlagsRule.enableFlags(Flags.FLAG_VIBRATE_WHILE_UNLOCKED);
when(mVibrator.hasVibrator()).thenReturn(false);
assertThat(mController.isAvailable()).isFalse();
assertThat(mController.getAvailabilityStatus()).isEqualTo(
@@ -84,6 +86,7 @@
public void isAvailable_flagDisabled_shouldReturnFalse() {
// TODO: b/291907312 - remove feature flags
mSetFlagsRule.disableFlags(Flags.FLAG_POLITE_NOTIFICATIONS);
+ mSetFlagsRule.enableFlags(Flags.FLAG_VIBRATE_WHILE_UNLOCKED);
assertThat(mController.isAvailable()).isFalse();
assertThat(mController.getAvailabilityStatus()).isEqualTo(
BasePreferenceController.CONDITIONALLY_UNAVAILABLE);