summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java814
1 files changed, 412 insertions, 402 deletions
diff --git a/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java b/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java
index b2a54010e75e..cb41769c3619 100644
--- a/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java
+++ b/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java
@@ -55,14 +55,13 @@ import static junit.framework.TestCase.fail;
import static org.junit.Assert.assertNotEquals;
import static org.junit.Assert.assertNull;
import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.atLeastOnce;
-import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.notNull;
import static org.mockito.Mockito.reset;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
@@ -149,7 +148,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
@Mock PackageManager mPackageManager;
private Resources mResources;
private TestableLooper mTestableLooper;
- private ZenModeHelper mZenModeHelperSpy;
+ private ZenModeHelper mZenModeHelper;
private ContentResolver mContentResolver;
@Mock AppOpsManager mAppOps;
private WrappedSysUiStatsEvent.WrappedBuilderFactory mStatsEventBuilderFactory;
@@ -176,8 +175,8 @@ public class ZenModeHelperTest extends UiServiceTestCase {
mConditionProviders = new ConditionProviders(mContext, new UserProfiles(),
AppGlobals.getPackageManager());
mConditionProviders.addSystemProvider(new CountdownConditionProvider());
- mZenModeHelperSpy = spy(new ZenModeHelper(mContext, mTestableLooper.getLooper(),
- mConditionProviders, mStatsEventBuilderFactory));
+ mZenModeHelper = new ZenModeHelper(mContext, mTestableLooper.getLooper(),
+ mConditionProviders, mStatsEventBuilderFactory);
ResolveInfo ri = new ResolveInfo();
ri.activityInfo = new ActivityInfo();
@@ -187,7 +186,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
.thenReturn(CUSTOM_PKG_UID);
when(mPackageManager.getPackagesForUid(anyInt())).thenReturn(
new String[] {pkg});
- mZenModeHelperSpy.mPm = mPackageManager;
+ mZenModeHelper.mPm = mPackageManager;
}
private XmlResourceParser getDefaultConfigParser() throws IOException, XmlPullParserException {
@@ -221,10 +220,10 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
serializer.setOutput(new BufferedOutputStream(baos), "utf-8");
serializer.startDocument(null, true);
- mZenModeHelperSpy.writeXml(serializer, false, version, UserHandle.USER_ALL);
+ mZenModeHelper.writeXml(serializer, false, version, UserHandle.USER_ALL);
serializer.endDocument();
serializer.flush();
- mZenModeHelperSpy.setConfig(new ZenModeConfig(), null, "writing xml");
+ mZenModeHelper.setConfig(new ZenModeConfig(), null, "writing xml");
return baos;
}
@@ -234,12 +233,12 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
serializer.setOutput(new BufferedOutputStream(baos), "utf-8");
serializer.startDocument(null, true);
- mZenModeHelperSpy.writeXml(serializer, true, version, userId);
+ mZenModeHelper.writeXml(serializer, true, version, userId);
serializer.endDocument();
serializer.flush();
ZenModeConfig newConfig = new ZenModeConfig();
newConfig.user = userId;
- mZenModeHelperSpy.setConfig(newConfig, null, "writing xml");
+ mZenModeHelper.setConfig(newConfig, null, "writing xml");
return baos;
}
@@ -277,209 +276,209 @@ public class ZenModeHelperTest extends UiServiceTestCase {
return customRule;
}
+ // Verify that the appropriate appOpps operations are called for the restrictions requested.
+ // Note that this method assumes that priority only DND exempt packages is set to something
+ // in order to be able to distinguish it from the null case, so callers should make sure
+ // setPriorityOnlyDndExemptPackages has been called bofre this verify statement.
+ private void verifyApplyRestrictions(boolean zenPriorityOnly, boolean mute, int usage) {
+ int expectedMode = mute ? AppOpsManager.MODE_IGNORED : AppOpsManager.MODE_ALLOWED;
+ verify(mAppOps, atLeastOnce()).setRestriction(eq(AppOpsManager.OP_VIBRATE), eq(usage),
+ eq(expectedMode), zenPriorityOnly ? notNull() : eq(null));
+ verify(mAppOps, atLeastOnce()).setRestriction(eq(AppOpsManager.OP_PLAY_AUDIO), eq(usage),
+ eq(expectedMode), zenPriorityOnly ? notNull() : eq(null));
+ }
+
@Test
public void testZenOff_NoMuteApplied() {
- mZenModeHelperSpy.mZenMode = Settings.Global.ZEN_MODE_OFF;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS |
- PRIORITY_CATEGORY_MEDIA, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.applyRestrictions();
+ mZenModeHelper.mZenMode = Settings.Global.ZEN_MODE_OFF;
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
+ mZenModeHelper.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS
+ | PRIORITY_CATEGORY_MEDIA, 0, 0, 0, 0, 0);
+ mZenModeHelper.applyRestrictions();
- doNothing().when(mZenModeHelperSpy).applyRestrictions(eq(false), anyBoolean(), anyInt());
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, false,
- AudioAttributes.USAGE_ALARM);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, false,
- AudioAttributes.USAGE_MEDIA);
+ // Check that we call through to applyRestrictions with usages USAGE_ALARM and USAGE_MEDIA
+ verifyApplyRestrictions(false, false, AudioAttributes.USAGE_ALARM);
+ verifyApplyRestrictions(false, false, AudioAttributes.USAGE_MEDIA);
}
@Test
public void testZenOn_NotificationApplied() {
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
// The most permissive policy
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS |
- PRIORITY_CATEGORY_MEDIA | PRIORITY_CATEGORY_MESSAGES
+ mZenModeHelper.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS
+ | PRIORITY_CATEGORY_MEDIA | PRIORITY_CATEGORY_MESSAGES
| PRIORITY_CATEGORY_CONVERSATIONS | PRIORITY_CATEGORY_CALLS
| PRIORITY_CATEGORY_ALARMS | PRIORITY_CATEGORY_EVENTS | PRIORITY_CATEGORY_REMINDERS
| PRIORITY_CATEGORY_REPEAT_CALLERS | PRIORITY_CATEGORY_SYSTEM, PRIORITY_SENDERS_ANY,
PRIORITY_SENDERS_ANY, 0, CONVERSATION_SENDERS_ANYONE);
- mZenModeHelperSpy.applyRestrictions();
-
- doNothing().when(mZenModeHelperSpy).applyRestrictions(anyBoolean(), anyBoolean(), anyInt());
- verify(mZenModeHelperSpy).applyRestrictions(true, true,
- AudioAttributes.USAGE_NOTIFICATION);
- verify(mZenModeHelperSpy).applyRestrictions(true, true,
- AudioAttributes.USAGE_NOTIFICATION_EVENT);
- verify(mZenModeHelperSpy).applyRestrictions(true, true,
+ mZenModeHelper.applyRestrictions();
+
+ verifyApplyRestrictions(true, true, AudioAttributes.USAGE_NOTIFICATION);
+ verifyApplyRestrictions(true, true, AudioAttributes.USAGE_NOTIFICATION_EVENT);
+ verifyApplyRestrictions(true, true,
AudioAttributes.USAGE_NOTIFICATION_COMMUNICATION_DELAYED);
- verify(mZenModeHelperSpy).applyRestrictions(true, true,
+ verifyApplyRestrictions(true, true,
AudioAttributes.USAGE_NOTIFICATION_COMMUNICATION_INSTANT);
}
@Test
public void testZenOn_StarredCallers_CallTypesBlocked() {
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
// The most permissive policy
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS |
- PRIORITY_CATEGORY_MEDIA | PRIORITY_CATEGORY_MESSAGES
+ mZenModeHelper.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS
+ | PRIORITY_CATEGORY_MEDIA | PRIORITY_CATEGORY_MESSAGES
| PRIORITY_CATEGORY_CONVERSATIONS | PRIORITY_CATEGORY_CALLS
| PRIORITY_CATEGORY_ALARMS | PRIORITY_CATEGORY_EVENTS | PRIORITY_CATEGORY_REMINDERS
| PRIORITY_CATEGORY_SYSTEM,
PRIORITY_SENDERS_STARRED,
PRIORITY_SENDERS_ANY, 0, CONVERSATION_SENDERS_ANYONE);
- mZenModeHelperSpy.applyRestrictions();
+ mZenModeHelper.applyRestrictions();
- doNothing().when(mZenModeHelperSpy).applyRestrictions(anyBoolean(), anyBoolean(), anyInt());
- verify(mZenModeHelperSpy).applyRestrictions(true, true,
+ verifyApplyRestrictions(true, true,
AudioAttributes.USAGE_NOTIFICATION_RINGTONE);
- verify(mZenModeHelperSpy).applyRestrictions(true, true,
+ verifyApplyRestrictions(true, true,
AudioAttributes.USAGE_NOTIFICATION_COMMUNICATION_REQUEST);
}
@Test
public void testZenOn_AllCallers_CallTypesAllowed() {
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
// The most permissive policy
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS |
- PRIORITY_CATEGORY_MEDIA | PRIORITY_CATEGORY_MESSAGES
+ mZenModeHelper.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS
+ | PRIORITY_CATEGORY_MEDIA | PRIORITY_CATEGORY_MESSAGES
| PRIORITY_CATEGORY_CONVERSATIONS | PRIORITY_CATEGORY_CALLS
| PRIORITY_CATEGORY_ALARMS | PRIORITY_CATEGORY_EVENTS | PRIORITY_CATEGORY_REMINDERS
| PRIORITY_CATEGORY_REPEAT_CALLERS | PRIORITY_CATEGORY_SYSTEM,
PRIORITY_SENDERS_ANY,
PRIORITY_SENDERS_ANY, 0, CONVERSATION_SENDERS_ANYONE);
- mZenModeHelperSpy.applyRestrictions();
+ mZenModeHelper.applyRestrictions();
- doNothing().when(mZenModeHelperSpy).applyRestrictions(anyBoolean(), anyBoolean(), anyInt());
- verify(mZenModeHelperSpy).applyRestrictions(true, false,
- AudioAttributes.USAGE_NOTIFICATION_RINGTONE);
- verify(mZenModeHelperSpy).applyRestrictions(true, false,
+ verifyApplyRestrictions(true, false, AudioAttributes.USAGE_NOTIFICATION_RINGTONE);
+ verifyApplyRestrictions(true, false,
AudioAttributes.USAGE_NOTIFICATION_COMMUNICATION_REQUEST);
}
@Test
public void testZenOn_AllowAlarmsMedia_NoAlarmMediaMuteApplied() {
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS |
- PRIORITY_CATEGORY_MEDIA, 0, 0, 0, 0, 0);
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
+ mZenModeHelper.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS
+ | PRIORITY_CATEGORY_MEDIA, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.applyRestrictions();
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(true, false,
- AudioAttributes.USAGE_ALARM);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(true, false,
- AudioAttributes.USAGE_MEDIA);
+ mZenModeHelper.applyRestrictions();
+ verifyApplyRestrictions(true, false, AudioAttributes.USAGE_ALARM);
+ verifyApplyRestrictions(true, false, AudioAttributes.USAGE_MEDIA);
}
@Test
public void testZenOn_DisallowAlarmsMedia_AlarmMediaMuteApplied() {
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.applyRestrictions();
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(true, true,
- AudioAttributes.USAGE_ALARM);
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
+ mZenModeHelper.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
+ mZenModeHelper.applyRestrictions();
+ verifyApplyRestrictions(true, true, AudioAttributes.USAGE_ALARM);
// Media is a catch-all that includes games
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(true, true,
- AudioAttributes.USAGE_MEDIA);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(true, true,
- AudioAttributes.USAGE_GAME);
+ verifyApplyRestrictions(true, true, AudioAttributes.USAGE_MEDIA);
+ verifyApplyRestrictions(true, true, AudioAttributes.USAGE_GAME);
}
@Test
public void testTotalSilence() {
- mZenModeHelperSpy.mZenMode = Settings.Global.ZEN_MODE_NO_INTERRUPTIONS;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS |
- PRIORITY_CATEGORY_MEDIA, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.applyRestrictions();
+ mZenModeHelper.mZenMode = Settings.Global.ZEN_MODE_NO_INTERRUPTIONS;
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
+ mZenModeHelper.mConsolidatedPolicy = new Policy(Policy.PRIORITY_CATEGORY_ALARMS
+ | PRIORITY_CATEGORY_MEDIA, 0, 0, 0, 0, 0);
+ mZenModeHelper.applyRestrictions();
// Total silence will silence alarms, media and system noises (but not vibrations)
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, true,
- AudioAttributes.USAGE_ALARM);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, true,
- AudioAttributes.USAGE_MEDIA);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, true,
- AudioAttributes.USAGE_GAME);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, true,
- AudioAttributes.USAGE_ASSISTANCE_SONIFICATION, AppOpsManager.OP_PLAY_AUDIO);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, false,
- AudioAttributes.USAGE_ASSISTANCE_SONIFICATION, AppOpsManager.OP_VIBRATE);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, true,
- AudioAttributes.USAGE_UNKNOWN);
+ verifyApplyRestrictions(false, true, AudioAttributes.USAGE_ALARM);
+ verifyApplyRestrictions(false, true, AudioAttributes.USAGE_MEDIA);
+ verifyApplyRestrictions(false, true, AudioAttributes.USAGE_GAME);
+ verify(mAppOps, atLeastOnce()).setRestriction(AppOpsManager.OP_PLAY_AUDIO,
+ AudioAttributes.USAGE_ASSISTANCE_SONIFICATION, AppOpsManager.MODE_IGNORED, null);
+ verify(mAppOps, atLeastOnce()).setRestriction(AppOpsManager.OP_VIBRATE,
+ AudioAttributes.USAGE_ASSISTANCE_SONIFICATION, AppOpsManager.MODE_ALLOWED, null);
+ verifyApplyRestrictions(false, true, AudioAttributes.USAGE_UNKNOWN);
}
@Test
public void testAlarmsOnly_alarmMediaMuteNotApplied() {
- mZenModeHelperSpy.mZenMode = Settings.Global.ZEN_MODE_ALARMS;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.applyRestrictions();
+ mZenModeHelper.mZenMode = Settings.Global.ZEN_MODE_ALARMS;
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
+ mZenModeHelper.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
+ mZenModeHelper.applyRestrictions();
// Alarms only mode will not silence alarms
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, false,
- AudioAttributes.USAGE_ALARM);
+ verifyApplyRestrictions(false, false, AudioAttributes.USAGE_ALARM);
// Alarms only mode will not silence media
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, false,
- AudioAttributes.USAGE_MEDIA);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, false,
- AudioAttributes.USAGE_GAME);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, false,
- AudioAttributes.USAGE_UNKNOWN);
+ verifyApplyRestrictions(false, false, AudioAttributes.USAGE_MEDIA);
+ verifyApplyRestrictions(false, false, AudioAttributes.USAGE_GAME);
+ verifyApplyRestrictions(false, false, AudioAttributes.USAGE_UNKNOWN);
// Alarms only will silence system noises (but not vibrations)
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, true,
- AudioAttributes.USAGE_ASSISTANCE_SONIFICATION, AppOpsManager.OP_PLAY_AUDIO);
+ verify(mAppOps, atLeastOnce()).setRestriction(AppOpsManager.OP_PLAY_AUDIO,
+ AudioAttributes.USAGE_ASSISTANCE_SONIFICATION, AppOpsManager.MODE_IGNORED, null);
}
@Test
public void testAlarmsOnly_callsMuteApplied() {
- mZenModeHelperSpy.mZenMode = Settings.Global.ZEN_MODE_ALARMS;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.applyRestrictions();
+ mZenModeHelper.mZenMode = Settings.Global.ZEN_MODE_ALARMS;
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
+ mZenModeHelper.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
+ mZenModeHelper.applyRestrictions();
// Alarms only mode will silence calls despite priority-mode config
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, true,
- AudioAttributes.USAGE_NOTIFICATION_RINGTONE);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, true,
+ verifyApplyRestrictions(false, true, AudioAttributes.USAGE_NOTIFICATION_RINGTONE);
+ verifyApplyRestrictions(false, true,
AudioAttributes.USAGE_NOTIFICATION_COMMUNICATION_REQUEST);
}
@Test
public void testAlarmsOnly_allZenConfigToggledCannotBypass_alarmMuteNotApplied() {
// Only audio attributes with SUPPRESIBLE_NEVER can bypass
- mZenModeHelperSpy.mZenMode = Settings.Global.ZEN_MODE_ALARMS;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.applyRestrictions();
+ mZenModeHelper.mZenMode = Settings.Global.ZEN_MODE_ALARMS;
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
+ mZenModeHelper.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
+ mZenModeHelper.applyRestrictions();
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(false, false,
- AudioAttributes.USAGE_ALARM);
+ verifyApplyRestrictions(false, false, AudioAttributes.USAGE_ALARM);
}
@Test
public void testZenAllCannotBypass() {
// Only audio attributes with SUPPRESIBLE_NEVER can bypass
// with special case USAGE_ASSISTANCE_SONIFICATION
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.applyRestrictions();
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
+ mZenModeHelper.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
+ mZenModeHelper.applyRestrictions();
for (int usage : AudioAttributes.SDK_USAGES) {
if (usage == AudioAttributes.USAGE_ASSISTANCE_SONIFICATION) {
// only mute audio, not vibrations
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(true, true, usage,
- AppOpsManager.OP_PLAY_AUDIO);
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(true, false, usage,
- AppOpsManager.OP_VIBRATE);
+ verify(mAppOps, atLeastOnce()).setRestriction(eq(AppOpsManager.OP_PLAY_AUDIO),
+ eq(usage), eq(AppOpsManager.MODE_IGNORED), notNull());
+ verify(mAppOps, atLeastOnce()).setRestriction(eq(AppOpsManager.OP_VIBRATE),
+ eq(usage), eq(AppOpsManager.MODE_ALLOWED), notNull());
} else {
boolean shouldMute = AudioAttributes.SUPPRESSIBLE_USAGES.get(usage)
!= AudioAttributes.SUPPRESSIBLE_NEVER;
- verify(mZenModeHelperSpy, atLeastOnce()).applyRestrictions(true, shouldMute, usage);
+ verifyApplyRestrictions(true, shouldMute, usage);
}
}
}
@Test
public void testApplyRestrictions_whitelist_priorityOnlyMode() {
- mZenModeHelperSpy.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.applyRestrictions();
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
+ mZenModeHelper.applyRestrictions();
for (int usage : AudioAttributes.SDK_USAGES) {
verify(mAppOps).setRestriction(
@@ -491,10 +490,10 @@ public class ZenModeHelperTest extends UiServiceTestCase {
@Test
public void testApplyRestrictions_whitelist_alarmsOnlyMode() {
- mZenModeHelperSpy.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
- mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_ALARMS;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.applyRestrictions();
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
+ mZenModeHelper.mZenMode = Global.ZEN_MODE_ALARMS;
+ mZenModeHelper.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
+ mZenModeHelper.applyRestrictions();
for (int usage : AudioAttributes.SDK_USAGES) {
verify(mAppOps).setRestriction(
@@ -506,10 +505,10 @@ public class ZenModeHelperTest extends UiServiceTestCase {
@Test
public void testApplyRestrictions_whitelist_totalSilenceMode() {
- mZenModeHelperSpy.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
- mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_NO_INTERRUPTIONS;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.applyRestrictions();
+ mZenModeHelper.setPriorityOnlyDndExemptPackages(new String[] {PKG_O});
+ mZenModeHelper.mZenMode = Global.ZEN_MODE_NO_INTERRUPTIONS;
+ mZenModeHelper.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
+ mZenModeHelper.applyRestrictions();
for (int usage : AudioAttributes.SDK_USAGES) {
verify(mAppOps).setRestriction(
@@ -533,11 +532,10 @@ public class ZenModeHelperTest extends UiServiceTestCase {
// and we're setting zen mode on
Settings.Secure.putInt(mContentResolver, Settings.Secure.SHOW_ZEN_UPGRADE_NOTIFICATION, 1);
Settings.Secure.putInt(mContentResolver, Settings.Secure.ZEN_SETTINGS_UPDATED, 0);
- mZenModeHelperSpy.mIsBootComplete = true;
- mZenModeHelperSpy.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
- mZenModeHelperSpy.setZenModeSetting(ZEN_MODE_IMPORTANT_INTERRUPTIONS);
+ mZenModeHelper.mIsBootComplete = true;
+ mZenModeHelper.mConsolidatedPolicy = new Policy(0, 0, 0, 0, 0, 0);
+ mZenModeHelper.setZenModeSetting(ZEN_MODE_IMPORTANT_INTERRUPTIONS);
- verify(mZenModeHelperSpy, times(1)).createZenUpgradeNotification();
verify(mNotificationManager, times(1)).notify(eq(ZenModeHelper.TAG),
eq(SystemMessage.NOTE_ZEN_UPGRADE), any());
assertEquals(0, Settings.Secure.getInt(mContentResolver,
@@ -549,10 +547,9 @@ public class ZenModeHelperTest extends UiServiceTestCase {
// doesn't show upgrade notification if stored settings says don't show
Settings.Secure.putInt(mContentResolver, Settings.Secure.SHOW_ZEN_UPGRADE_NOTIFICATION, 0);
Settings.Secure.putInt(mContentResolver, Settings.Secure.ZEN_SETTINGS_UPDATED, 0);
- mZenModeHelperSpy.mIsBootComplete = true;
- mZenModeHelperSpy.setZenModeSetting(ZEN_MODE_IMPORTANT_INTERRUPTIONS);
+ mZenModeHelper.mIsBootComplete = true;
+ mZenModeHelper.setZenModeSetting(ZEN_MODE_IMPORTANT_INTERRUPTIONS);
- verify(mZenModeHelperSpy, never()).createZenUpgradeNotification();
verify(mNotificationManager, never()).notify(eq(ZenModeHelper.TAG),
eq(SystemMessage.NOTE_ZEN_UPGRADE), any());
}
@@ -562,10 +559,9 @@ public class ZenModeHelperTest extends UiServiceTestCase {
// doesn't show upgrade notification since zen was already updated
Settings.Secure.putInt(mContentResolver, Settings.Secure.SHOW_ZEN_UPGRADE_NOTIFICATION, 0);
Settings.Secure.putInt(mContentResolver, Settings.Secure.ZEN_SETTINGS_UPDATED, 1);
- mZenModeHelperSpy.mIsBootComplete = true;
- mZenModeHelperSpy.setZenModeSetting(ZEN_MODE_IMPORTANT_INTERRUPTIONS);
+ mZenModeHelper.mIsBootComplete = true;
+ mZenModeHelper.setZenModeSetting(ZEN_MODE_IMPORTANT_INTERRUPTIONS);
- verify(mZenModeHelperSpy, never()).createZenUpgradeNotification();
verify(mNotificationManager, never()).notify(eq(ZenModeHelper.TAG),
eq(SystemMessage.NOTE_ZEN_UPGRADE), any());
}
@@ -573,41 +569,41 @@ public class ZenModeHelperTest extends UiServiceTestCase {
@Test
public void testZenSetInternalRinger_AllPriorityNotificationSoundsMuted() {
AudioManagerInternal mAudioManager = mock(AudioManagerInternal.class);
- mZenModeHelperSpy.mAudioManager = mAudioManager;
+ mZenModeHelper.mAudioManager = mAudioManager;
Global.putString(mContext.getContentResolver(), Global.ZEN_MODE_RINGER_LEVEL,
Integer.toString(AudioManager.RINGER_MODE_NORMAL));
// 1. Current ringer is normal
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_NORMAL);
// Set zen to priority-only with all notification sounds muted (so ringer will be muted)
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConfig.allowReminders = false;
- mZenModeHelperSpy.mConfig.allowCalls = false;
- mZenModeHelperSpy.mConfig.allowMessages = false;
- mZenModeHelperSpy.mConfig.allowEvents = false;
- mZenModeHelperSpy.mConfig.allowRepeatCallers = false;
- mZenModeHelperSpy.mConfig.allowConversations = false;
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mConfig.allowReminders = false;
+ mZenModeHelper.mConfig.allowCalls = false;
+ mZenModeHelper.mConfig.allowMessages = false;
+ mZenModeHelper.mConfig.allowEvents = false;
+ mZenModeHelper.mConfig.allowRepeatCallers = false;
+ mZenModeHelper.mConfig.allowConversations = false;
// 2. apply priority only zen - verify ringer is unchanged
- mZenModeHelperSpy.applyZenToRingerMode();
+ mZenModeHelper.applyZenToRingerMode();
verify(mAudioManager, never()).setRingerModeInternal(AudioManager.RINGER_MODE_SILENT,
- mZenModeHelperSpy.TAG);
+ mZenModeHelper.TAG);
// 3. apply zen off - verify zen is set to previous ringer (normal)
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_SILENT);
- mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_OFF;
- mZenModeHelperSpy.applyZenToRingerMode();
+ mZenModeHelper.mZenMode = Global.ZEN_MODE_OFF;
+ mZenModeHelper.applyZenToRingerMode();
verify(mAudioManager, atLeastOnce()).setRingerModeInternal(AudioManager.RINGER_MODE_NORMAL,
- mZenModeHelperSpy.TAG);
+ mZenModeHelper.TAG);
}
@Test
public void testRingerAffectedStreamsTotalSilence() {
// in total silence:
// ringtone, notification, system, alarm, streams, music are affected by ringer mode
- mZenModeHelperSpy.mZenMode = Settings.Global.ZEN_MODE_NO_INTERRUPTIONS;
+ mZenModeHelper.mZenMode = Settings.Global.ZEN_MODE_NO_INTERRUPTIONS;
ZenModeHelper.RingerModeDelegate ringerModeDelegate =
- mZenModeHelperSpy.new RingerModeDelegate();
+ mZenModeHelper.new RingerModeDelegate();
int ringerModeAffectedStreams = ringerModeDelegate.getRingerModeAffectedStreams(0);
assertTrue((ringerModeAffectedStreams & (1 << AudioSystem.STREAM_RING)) != 0);
assertTrue((ringerModeAffectedStreams & (1 << AudioSystem.STREAM_NOTIFICATION))
@@ -622,11 +618,11 @@ public class ZenModeHelperTest extends UiServiceTestCase {
public void testRingerAffectedStreamsPriorityOnly() {
// in priority only mode:
// ringtone, notification and system streams are affected by ringer mode
- mZenModeHelperSpy.mConfig.allowAlarms = true;
- mZenModeHelperSpy.mConfig.allowReminders = true;
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mConfig.allowAlarms = true;
+ mZenModeHelper.mConfig.allowReminders = true;
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
ZenModeHelper.RingerModeDelegate ringerModeDelegateRingerMuted =
- mZenModeHelperSpy.new RingerModeDelegate();
+ mZenModeHelper.new RingerModeDelegate();
int ringerModeAffectedStreams =
ringerModeDelegateRingerMuted.getRingerModeAffectedStreams(0);
@@ -640,15 +636,15 @@ public class ZenModeHelperTest extends UiServiceTestCase {
// even when ringer is muted (since all ringer sounds cannot bypass DND),
// system stream is still affected by ringer mode
- mZenModeHelperSpy.mConfig.allowSystem = false;
- mZenModeHelperSpy.mConfig.allowReminders = false;
- mZenModeHelperSpy.mConfig.allowCalls = false;
- mZenModeHelperSpy.mConfig.allowMessages = false;
- mZenModeHelperSpy.mConfig.allowEvents = false;
- mZenModeHelperSpy.mConfig.allowRepeatCallers = false;
- mZenModeHelperSpy.mConfig.allowConversations = false;
+ mZenModeHelper.mConfig.allowSystem = false;
+ mZenModeHelper.mConfig.allowReminders = false;
+ mZenModeHelper.mConfig.allowCalls = false;
+ mZenModeHelper.mConfig.allowMessages = false;
+ mZenModeHelper.mConfig.allowEvents = false;
+ mZenModeHelper.mConfig.allowRepeatCallers = false;
+ mZenModeHelper.mConfig.allowConversations = false;
ZenModeHelper.RingerModeDelegate ringerModeDelegateRingerNotMuted =
- mZenModeHelperSpy.new RingerModeDelegate();
+ mZenModeHelper.new RingerModeDelegate();
int ringerMutedRingerModeAffectedStreams =
ringerModeDelegateRingerNotMuted.getRingerModeAffectedStreams(0);
@@ -665,74 +661,74 @@ public class ZenModeHelperTest extends UiServiceTestCase {
@Test
public void testZenSetInternalRinger_NotAllPriorityNotificationSoundsMuted_StartNormal() {
AudioManagerInternal mAudioManager = mock(AudioManagerInternal.class);
- mZenModeHelperSpy.mAudioManager = mAudioManager;
+ mZenModeHelper.mAudioManager = mAudioManager;
Global.putString(mContext.getContentResolver(), Global.ZEN_MODE_RINGER_LEVEL,
Integer.toString(AudioManager.RINGER_MODE_NORMAL));
// 1. Current ringer is normal
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_NORMAL);
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConfig.allowReminders = true;
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mConfig.allowReminders = true;
// 2. apply priority only zen - verify ringer is normal
- mZenModeHelperSpy.applyZenToRingerMode();
+ mZenModeHelper.applyZenToRingerMode();
verify(mAudioManager, atLeastOnce()).setRingerModeInternal(AudioManager.RINGER_MODE_NORMAL,
- mZenModeHelperSpy.TAG);
+ mZenModeHelper.TAG);
// 3. apply zen off - verify ringer remains normal
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_NORMAL);
- mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_OFF;
- mZenModeHelperSpy.applyZenToRingerMode();
+ mZenModeHelper.mZenMode = Global.ZEN_MODE_OFF;
+ mZenModeHelper.applyZenToRingerMode();
verify(mAudioManager, atLeastOnce()).setRingerModeInternal(AudioManager.RINGER_MODE_NORMAL,
- mZenModeHelperSpy.TAG);
+ mZenModeHelper.TAG);
}
@Test
public void testZenSetInternalRinger_NotAllPriorityNotificationSoundsMuted_StartSilent() {
AudioManagerInternal mAudioManager = mock(AudioManagerInternal.class);
- mZenModeHelperSpy.mAudioManager = mAudioManager;
+ mZenModeHelper.mAudioManager = mAudioManager;
Global.putString(mContext.getContentResolver(), Global.ZEN_MODE_RINGER_LEVEL,
Integer.toString(AudioManager.RINGER_MODE_SILENT));
// 1. Current ringer is silent
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_SILENT);
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConfig.allowReminders = true;
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mConfig.allowReminders = true;
// 2. apply priority only zen - verify ringer is silent
- mZenModeHelperSpy.applyZenToRingerMode();
+ mZenModeHelper.applyZenToRingerMode();
verify(mAudioManager, atLeastOnce()).setRingerModeInternal(AudioManager.RINGER_MODE_SILENT,
- mZenModeHelperSpy.TAG);
+ mZenModeHelper.TAG);
// 3. apply zen-off - verify ringer is still silent
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_SILENT);
- mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_OFF;
- mZenModeHelperSpy.applyZenToRingerMode();
+ mZenModeHelper.mZenMode = Global.ZEN_MODE_OFF;
+ mZenModeHelper.applyZenToRingerMode();
verify(mAudioManager, atLeastOnce()).setRingerModeInternal(AudioManager.RINGER_MODE_SILENT,
- mZenModeHelperSpy.TAG);
+ mZenModeHelper.TAG);
}
@Test
public void testZenSetInternalRinger_NotAllPriorityNotificationSoundsMuted_RingerChanges() {
AudioManagerInternal mAudioManager = mock(AudioManagerInternal.class);
- mZenModeHelperSpy.mAudioManager = mAudioManager;
+ mZenModeHelper.mAudioManager = mAudioManager;
Global.putString(mContext.getContentResolver(), Global.ZEN_MODE_RINGER_LEVEL,
Integer.toString(AudioManager.RINGER_MODE_NORMAL));
// 1. Current ringer is normal
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_NORMAL);
// Set zen to priority-only with all notification sounds muted (so ringer will be muted)
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConfig.allowReminders = true;
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mConfig.allowReminders = true;
// 2. apply priority only zen - verify zen will still be normal
- mZenModeHelperSpy.applyZenToRingerMode();
+ mZenModeHelper.applyZenToRingerMode();
verify(mAudioManager, atLeastOnce()).setRingerModeInternal(AudioManager.RINGER_MODE_NORMAL,
- mZenModeHelperSpy.TAG);
+ mZenModeHelper.TAG);
// 3. change ringer from normal to silent, verify previous ringer set to new ringer (silent)
ZenModeHelper.RingerModeDelegate ringerModeDelegate =
- mZenModeHelperSpy.new RingerModeDelegate();
+ mZenModeHelper.new RingerModeDelegate();
ringerModeDelegate.onSetRingerModeInternal(AudioManager.RINGER_MODE_NORMAL,
AudioManager.RINGER_MODE_SILENT, "test", AudioManager.RINGER_MODE_NORMAL,
VolumePolicy.DEFAULT);
@@ -741,41 +737,40 @@ public class ZenModeHelperTest extends UiServiceTestCase {
// 4. apply zen off - verify ringer still silenced
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_SILENT);
- mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_OFF;
- mZenModeHelperSpy.applyZenToRingerMode();
+ mZenModeHelper.mZenMode = Global.ZEN_MODE_OFF;
+ mZenModeHelper.applyZenToRingerMode();
verify(mAudioManager, atLeastOnce()).setRingerModeInternal(AudioManager.RINGER_MODE_SILENT,
- mZenModeHelperSpy.TAG);
+ mZenModeHelper.TAG);
}
@Test
public void testSilentRingerSavedInZenOff_startsZenOff() {
AudioManagerInternal mAudioManager = mock(AudioManagerInternal.class);
- mZenModeHelperSpy.mConfig = new ZenModeConfig();
- mZenModeHelperSpy.mAudioManager = mAudioManager;
+ mZenModeHelper.mConfig = new ZenModeConfig();
+ mZenModeHelper.mAudioManager = mAudioManager;
// apply zen off multiple times - verify ringer is not set to normal
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_SILENT);
- mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_OFF;
- mZenModeHelperSpy.mConfig = null; // will evaluate config to zen mode off
+ mZenModeHelper.mZenMode = Global.ZEN_MODE_OFF;
+ mZenModeHelper.mConfig = null; // will evaluate config to zen mode off
for (int i = 0; i < 3; i++) {
// if zen doesn't change, zen should not reapply itself to the ringer
- mZenModeHelperSpy.evaluateZenMode("test", true);
+ mZenModeHelper.evaluateZenMode("test", true);
}
- verify(mZenModeHelperSpy, never()).applyZenToRingerMode();
verify(mAudioManager, never()).setRingerModeInternal(AudioManager.RINGER_MODE_NORMAL,
- mZenModeHelperSpy.TAG);
+ mZenModeHelper.TAG);
}
@Test
public void testSilentRingerSavedOnZenOff_startsZenOn() {
AudioManagerInternal mAudioManager = mock(AudioManagerInternal.class);
- mZenModeHelperSpy.mAudioManager = mAudioManager;
- mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_OFF;
- mZenModeHelperSpy.mConfig = new ZenModeConfig();
+ mZenModeHelper.mAudioManager = mAudioManager;
+ mZenModeHelper.mZenMode = Global.ZEN_MODE_OFF;
+ mZenModeHelper.mConfig = new ZenModeConfig();
// previously set silent ringer
ZenModeHelper.RingerModeDelegate ringerModeDelegate =
- mZenModeHelperSpy.new RingerModeDelegate();
+ mZenModeHelper.new RingerModeDelegate();
ringerModeDelegate.onSetRingerModeInternal(AudioManager.RINGER_MODE_NORMAL,
AudioManager.RINGER_MODE_SILENT, "test", AudioManager.RINGER_MODE_NORMAL,
VolumePolicy.DEFAULT);
@@ -784,26 +779,25 @@ public class ZenModeHelperTest extends UiServiceTestCase {
// apply zen off multiple times - verify ringer is not set to normal
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_SILENT);
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
for (int i = 0; i < 3; i++) {
// if zen doesn't change, zen should not reapply itself to the ringer
- mZenModeHelperSpy.evaluateZenMode("test", true);
+ mZenModeHelper.evaluateZenMode("test", true);
}
- verify(mZenModeHelperSpy, times(1)).applyZenToRingerMode();
verify(mAudioManager, never()).setRingerModeInternal(AudioManager.RINGER_MODE_NORMAL,
- mZenModeHelperSpy.TAG);
+ mZenModeHelper.TAG);
}
@Test
public void testVibrateRingerSavedOnZenOff_startsZenOn() {
AudioManagerInternal mAudioManager = mock(AudioManagerInternal.class);
- mZenModeHelperSpy.mAudioManager = mAudioManager;
- mZenModeHelperSpy.mZenMode = Global.ZEN_MODE_OFF;
- mZenModeHelperSpy.mConfig = new ZenModeConfig();
+ mZenModeHelper.mAudioManager = mAudioManager;
+ mZenModeHelper.mZenMode = Global.ZEN_MODE_OFF;
+ mZenModeHelper.mConfig = new ZenModeConfig();
// previously set silent ringer
ZenModeHelper.RingerModeDelegate ringerModeDelegate =
- mZenModeHelperSpy.new RingerModeDelegate();
+ mZenModeHelper.new RingerModeDelegate();
ringerModeDelegate.onSetRingerModeInternal(AudioManager.RINGER_MODE_NORMAL,
AudioManager.RINGER_MODE_VIBRATE, "test", AudioManager.RINGER_MODE_NORMAL,
VolumePolicy.DEFAULT);
@@ -812,89 +806,88 @@ public class ZenModeHelperTest extends UiServiceTestCase {
// apply zen off multiple times - verify ringer is not set to normal
when(mAudioManager.getRingerModeInternal()).thenReturn(AudioManager.RINGER_MODE_VIBRATE);
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
for (int i = 0; i < 3; i++) {
// if zen doesn't change, zen should not reapply itself to the ringer
- mZenModeHelperSpy.evaluateZenMode("test", true);
+ mZenModeHelper.evaluateZenMode("test", true);
}
- verify(mZenModeHelperSpy, times(1)).applyZenToRingerMode();
verify(mAudioManager, never()).setRingerModeInternal(AudioManager.RINGER_MODE_NORMAL,
- mZenModeHelperSpy.TAG);
+ mZenModeHelper.TAG);
}
@Test
public void testParcelConfig() {
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConfig.allowAlarms = false;
- mZenModeHelperSpy.mConfig.allowMedia = false;
- mZenModeHelperSpy.mConfig.allowSystem = false;
- mZenModeHelperSpy.mConfig.allowReminders = true;
- mZenModeHelperSpy.mConfig.allowCalls = true;
- mZenModeHelperSpy.mConfig.allowMessages = true;
- mZenModeHelperSpy.mConfig.allowEvents = true;
- mZenModeHelperSpy.mConfig.allowRepeatCallers = true;
- mZenModeHelperSpy.mConfig.allowConversations = true;
- mZenModeHelperSpy.mConfig.allowConversationsFrom = ZenPolicy.CONVERSATION_SENDERS_ANYONE;
- mZenModeHelperSpy.mConfig.suppressedVisualEffects = SUPPRESSED_EFFECT_BADGE;
- mZenModeHelperSpy.mConfig.manualRule = new ZenModeConfig.ZenRule();
- mZenModeHelperSpy.mConfig.manualRule.component = new ComponentName("a", "a");
- mZenModeHelperSpy.mConfig.manualRule.enabled = true;
- mZenModeHelperSpy.mConfig.manualRule.snoozing = true;
-
- ZenModeConfig actual = mZenModeHelperSpy.mConfig.copy();
-
- assertEquals(mZenModeHelperSpy.mConfig, actual);
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mConfig.allowAlarms = false;
+ mZenModeHelper.mConfig.allowMedia = false;
+ mZenModeHelper.mConfig.allowSystem = false;
+ mZenModeHelper.mConfig.allowReminders = true;
+ mZenModeHelper.mConfig.allowCalls = true;
+ mZenModeHelper.mConfig.allowMessages = true;
+ mZenModeHelper.mConfig.allowEvents = true;
+ mZenModeHelper.mConfig.allowRepeatCallers = true;
+ mZenModeHelper.mConfig.allowConversations = true;
+ mZenModeHelper.mConfig.allowConversationsFrom = ZenPolicy.CONVERSATION_SENDERS_ANYONE;
+ mZenModeHelper.mConfig.suppressedVisualEffects = SUPPRESSED_EFFECT_BADGE;
+ mZenModeHelper.mConfig.manualRule = new ZenModeConfig.ZenRule();
+ mZenModeHelper.mConfig.manualRule.component = new ComponentName("a", "a");
+ mZenModeHelper.mConfig.manualRule.enabled = true;
+ mZenModeHelper.mConfig.manualRule.snoozing = true;
+
+ ZenModeConfig actual = mZenModeHelper.mConfig.copy();
+
+ assertEquals(mZenModeHelper.mConfig, actual);
}
@Test
public void testWriteXml() throws Exception {
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConfig.allowAlarms = false;
- mZenModeHelperSpy.mConfig.allowMedia = false;
- mZenModeHelperSpy.mConfig.allowSystem = false;
- mZenModeHelperSpy.mConfig.allowReminders = true;
- mZenModeHelperSpy.mConfig.allowCalls = true;
- mZenModeHelperSpy.mConfig.allowMessages = true;
- mZenModeHelperSpy.mConfig.allowEvents = true;
- mZenModeHelperSpy.mConfig.allowRepeatCallers = true;
- mZenModeHelperSpy.mConfig.allowConversations = true;
- mZenModeHelperSpy.mConfig.allowConversationsFrom = ZenPolicy.CONVERSATION_SENDERS_ANYONE;
- mZenModeHelperSpy.mConfig.suppressedVisualEffects = SUPPRESSED_EFFECT_BADGE;
- mZenModeHelperSpy.mConfig.manualRule = new ZenModeConfig.ZenRule();
- mZenModeHelperSpy.mConfig.manualRule.zenMode =
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mConfig.allowAlarms = false;
+ mZenModeHelper.mConfig.allowMedia = false;
+ mZenModeHelper.mConfig.allowSystem = false;
+ mZenModeHelper.mConfig.allowReminders = true;
+ mZenModeHelper.mConfig.allowCalls = true;
+ mZenModeHelper.mConfig.allowMessages = true;
+ mZenModeHelper.mConfig.allowEvents = true;
+ mZenModeHelper.mConfig.allowRepeatCallers = true;
+ mZenModeHelper.mConfig.allowConversations = true;
+ mZenModeHelper.mConfig.allowConversationsFrom = ZenPolicy.CONVERSATION_SENDERS_ANYONE;
+ mZenModeHelper.mConfig.suppressedVisualEffects = SUPPRESSED_EFFECT_BADGE;
+ mZenModeHelper.mConfig.manualRule = new ZenModeConfig.ZenRule();
+ mZenModeHelper.mConfig.manualRule.zenMode =
ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConfig.manualRule.component = new ComponentName("a", "a");
- mZenModeHelperSpy.mConfig.manualRule.pkg = "a";
- mZenModeHelperSpy.mConfig.manualRule.enabled = true;
+ mZenModeHelper.mConfig.manualRule.component = new ComponentName("a", "a");
+ mZenModeHelper.mConfig.manualRule.pkg = "a";
+ mZenModeHelper.mConfig.manualRule.enabled = true;
- ZenModeConfig expected = mZenModeHelperSpy.mConfig.copy();
+ ZenModeConfig expected = mZenModeHelper.mConfig.copy();
ByteArrayOutputStream baos = writeXmlAndPurge(null);
TypedXmlPullParser parser = getParserForByteStream(baos);
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
assertEquals("Config mismatch: current vs expected: "
- + new ZenModeDiff.ConfigDiff(mZenModeHelperSpy.mConfig, expected), expected,
- mZenModeHelperSpy.mConfig);
+ + new ZenModeDiff.ConfigDiff(mZenModeHelper.mConfig, expected), expected,
+ mZenModeHelper.mConfig);
}
@Test
public void testProto() {
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
+ mZenModeHelper.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
// existence of manual rule means it should be in output
- mZenModeHelperSpy.mConfig.manualRule = new ZenModeConfig.ZenRule();
- mZenModeHelperSpy.mConfig.manualRule.pkg = "android"; // system
+ mZenModeHelper.mConfig.manualRule = new ZenModeConfig.ZenRule();
+ mZenModeHelper.mConfig.manualRule.pkg = "android"; // system
- int n = mZenModeHelperSpy.mConfig.automaticRules.size();
+ int n = mZenModeHelper.mConfig.automaticRules.size();
List<String> ids = new ArrayList<>(n);
- for (ZenModeConfig.ZenRule rule : mZenModeHelperSpy.mConfig.automaticRules.values()) {
+ for (ZenModeConfig.ZenRule rule : mZenModeHelper.mConfig.automaticRules.values()) {
ids.add(rule.id);
}
ids.add(ZenModeConfig.MANUAL_RULE_ID);
ids.add(""); // for ROOT_CONFIG, logged with empty string as id
List<StatsEvent> events = new LinkedList<>();
- mZenModeHelperSpy.pullRules(events);
+ mZenModeHelper.pullRules(events);
assertEquals(n + 2, events.size()); // automatic rules + manual rule + root config
for (WrappedSysUiStatsEvent.WrappedBuilder builder : mStatsEventBuilderFactory.builders) {
if (builder.getAtomId() == DND_MODE_RULE) {
@@ -918,10 +911,10 @@ public class ZenModeHelperTest extends UiServiceTestCase {
public void testProtoWithAutoRule() throws Exception {
setupZenConfig();
// one enabled automatic rule
- mZenModeHelperSpy.mConfig.automaticRules = getCustomAutomaticRules(ZEN_MODE_FOR_TESTING);
+ mZenModeHelper.mConfig.automaticRules = getCustomAutomaticRules(ZEN_MODE_FOR_TESTING);
List<StatsEvent> events = new LinkedList<>();
- mZenModeHelperSpy.pullRules(events);
+ mZenModeHelper.pullRules(events);
boolean foundCustomEvent = false;
for (WrappedSysUiStatsEvent.WrappedBuilder builder : mStatsEventBuilderFactory.builders) {
@@ -942,23 +935,23 @@ public class ZenModeHelperTest extends UiServiceTestCase {
public void ruleUidsCached() throws Exception {
setupZenConfig();
// one enabled automatic rule
- mZenModeHelperSpy.mConfig.automaticRules = getCustomAutomaticRules();
+ mZenModeHelper.mConfig.automaticRules = getCustomAutomaticRules();
List<StatsEvent> events = new LinkedList<>();
// first time retrieving uid:
- mZenModeHelperSpy.pullRules(events);
+ mZenModeHelper.pullRules(events);
verify(mPackageManager, atLeastOnce()).getPackageUidAsUser(anyString(), anyInt());
// second time retrieving uid:
reset(mPackageManager);
- mZenModeHelperSpy.pullRules(events);
+ mZenModeHelper.pullRules(events);
verify(mPackageManager, never()).getPackageUidAsUser(anyString(), anyInt());
// new rule from same package + user added
reset(mPackageManager);
ZenModeConfig.ZenRule rule = createCustomAutomaticRule(ZEN_MODE_IMPORTANT_INTERRUPTIONS,
CUSTOM_RULE_ID + "2");
- mZenModeHelperSpy.mConfig.automaticRules.put(rule.id, rule);
- mZenModeHelperSpy.pullRules(events);
+ mZenModeHelper.mConfig.automaticRules.put(rule.id, rule);
+ mZenModeHelper.pullRules(events);
verify(mPackageManager, never()).getPackageUidAsUser(anyString(), anyInt());
}
@@ -969,23 +962,23 @@ public class ZenModeHelperTest extends UiServiceTestCase {
setupZenConfig();
// one enabled automatic rule
- mZenModeHelperSpy.mConfig.automaticRules = getCustomAutomaticRules();
+ mZenModeHelper.mConfig.automaticRules = getCustomAutomaticRules();
List<StatsEvent> events = new LinkedList<>();
- mZenModeHelperSpy.pullRules(events);
- mZenModeHelperSpy.removeAutomaticZenRule(CUSTOM_RULE_ID, "test");
+ mZenModeHelper.pullRules(events);
+ mZenModeHelper.removeAutomaticZenRule(CUSTOM_RULE_ID, "test");
assertTrue(-1
- == mZenModeHelperSpy.mRulesUidCache.getOrDefault(CUSTOM_PKG_NAME + "|" + 0, -1));
+ == mZenModeHelper.mRulesUidCache.getOrDefault(CUSTOM_PKG_NAME + "|" + 0, -1));
}
@Test
public void testProtoRedactsIds() throws Exception {
setupZenConfig();
// one enabled automatic rule
- mZenModeHelperSpy.mConfig.automaticRules = getCustomAutomaticRules();
+ mZenModeHelper.mConfig.automaticRules = getCustomAutomaticRules();
List<StatsEvent> events = new LinkedList<>();
- mZenModeHelperSpy.pullRules(events);
+ mZenModeHelper.pullRules(events);
boolean foundCustomEvent = false;
for (WrappedSysUiStatsEvent.WrappedBuilder builder : mStatsEventBuilderFactory.builders) {
@@ -999,12 +992,12 @@ public class ZenModeHelperTest extends UiServiceTestCase {
@Test
public void testProtoWithManualRule() throws Exception {
setupZenConfig();
- mZenModeHelperSpy.mConfig.automaticRules = getCustomAutomaticRules();
- mZenModeHelperSpy.mConfig.manualRule = new ZenModeConfig.ZenRule();
- mZenModeHelperSpy.mConfig.manualRule.enabled = true;
+ mZenModeHelper.mConfig.automaticRules = getCustomAutomaticRules();
+ mZenModeHelper.mConfig.manualRule = new ZenModeConfig.ZenRule();
+ mZenModeHelper.mConfig.manualRule.enabled = true;
List<StatsEvent> events = new LinkedList<>();
- mZenModeHelperSpy.pullRules(events);
+ mZenModeHelper.pullRules(events);
boolean foundManualRule = false;
for (WrappedSysUiStatsEvent.WrappedBuilder builder : mStatsEventBuilderFactory.builders) {
@@ -1020,50 +1013,50 @@ public class ZenModeHelperTest extends UiServiceTestCase {
public void testWriteXml_onlyBackupsTargetUser() throws Exception {
// Setup configs for user 10 and 11.
setupZenConfig();
- ZenModeConfig config10 = mZenModeHelperSpy.mConfig.copy();
+ ZenModeConfig config10 = mZenModeHelper.mConfig.copy();
config10.user = 10;
config10.allowAlarms = true;
config10.allowMedia = true;
- mZenModeHelperSpy.setConfig(config10, null, "writeXml");
- ZenModeConfig config11 = mZenModeHelperSpy.mConfig.copy();
+ mZenModeHelper.setConfig(config10, null, "writeXml");
+ ZenModeConfig config11 = mZenModeHelper.mConfig.copy();
config11.user = 11;
config11.allowAlarms = false;
config11.allowMedia = false;
- mZenModeHelperSpy.setConfig(config11, null, "writeXml");
+ mZenModeHelper.setConfig(config11, null, "writeXml");
// Backup user 10 and reset values.
ByteArrayOutputStream baos = writeXmlAndPurgeForUser(null, 10);
ZenModeConfig newConfig11 = new ZenModeConfig();
newConfig11.user = 11;
- mZenModeHelperSpy.mConfigs.put(11, newConfig11);
+ mZenModeHelper.mConfigs.put(11, newConfig11);
// Parse backup data.
TypedXmlPullParser parser = getParserForByteStream(baos);
- mZenModeHelperSpy.readXml(parser, true, 10);
- mZenModeHelperSpy.readXml(parser, true, 11);
+ mZenModeHelper.readXml(parser, true, 10);
+ mZenModeHelper.readXml(parser, true, 11);
- ZenModeConfig actual = mZenModeHelperSpy.mConfigs.get(10);
+ ZenModeConfig actual = mZenModeHelper.mConfigs.get(10);
assertEquals(
"Config mismatch: current vs expected: "
+ new ZenModeDiff.ConfigDiff(actual, config10), config10, actual);
- assertNotEquals("Expected config mismatch", config11, mZenModeHelperSpy.mConfigs.get(11));
+ assertNotEquals("Expected config mismatch", config11, mZenModeHelper.mConfigs.get(11));
}
@Test
public void testReadXmlRestore_forSystemUser() throws Exception {
setupZenConfig();
// one enabled automatic rule
- mZenModeHelperSpy.mConfig.automaticRules = getCustomAutomaticRules();
- ZenModeConfig original = mZenModeHelperSpy.mConfig.copy();
+ mZenModeHelper.mConfig.automaticRules = getCustomAutomaticRules();
+ ZenModeConfig original = mZenModeHelper.mConfig.copy();
ByteArrayOutputStream baos = writeXmlAndPurgeForUser(null, UserHandle.USER_SYSTEM);
TypedXmlPullParser parser = getParserForByteStream(baos);
- mZenModeHelperSpy.readXml(parser, true, UserHandle.USER_SYSTEM);
+ mZenModeHelper.readXml(parser, true, UserHandle.USER_SYSTEM);
assertEquals("Config mismatch: current vs original: "
- + new ZenModeDiff.ConfigDiff(mZenModeHelperSpy.mConfig, original),
- original, mZenModeHelperSpy.mConfig);
- assertEquals(original.hashCode(), mZenModeHelperSpy.mConfig.hashCode());
+ + new ZenModeDiff.ConfigDiff(mZenModeHelper.mConfig, original),
+ original, mZenModeHelper.mConfig);
+ assertEquals(original.hashCode(), mZenModeHelper.mConfig.hashCode());
}
/** Restore should ignore the data's user id and restore for the target user. */
@@ -1071,24 +1064,24 @@ public class ZenModeHelperTest extends UiServiceTestCase {
public void testReadXmlRestore_forNonSystemUser() throws Exception {
// Setup config.
setupZenConfig();
- mZenModeHelperSpy.mConfig.automaticRules = getCustomAutomaticRules();
- ZenModeConfig expected = mZenModeHelperSpy.mConfig.copy();
+ mZenModeHelper.mConfig.automaticRules = getCustomAutomaticRules();
+ ZenModeConfig expected = mZenModeHelper.mConfig.copy();
// Backup data for user 0.
ByteArrayOutputStream baos = writeXmlAndPurgeForUser(null, UserHandle.USER_SYSTEM);
// Restore data for user 10.
TypedXmlPullParser parser = getParserForByteStream(baos);
- mZenModeHelperSpy.readXml(parser, true, 10);
+ mZenModeHelper.readXml(parser, true, 10);
- ZenModeConfig actual = mZenModeHelperSpy.mConfigs.get(10);
+ ZenModeConfig actual = mZenModeHelper.mConfigs.get(10);
expected.user = 10;
assertEquals("Config mismatch: current vs original: "
+ new ZenModeDiff.ConfigDiff(actual, expected),
expected, actual);
assertEquals(expected.hashCode(), actual.hashCode());
expected.user = 0;
- assertNotEquals(expected, mZenModeHelperSpy.mConfig);
+ assertNotEquals(expected, mZenModeHelper.mConfig);
}
@Test
@@ -1119,19 +1112,19 @@ public class ZenModeHelperTest extends UiServiceTestCase {
.allowReminders(false)
.build();
automaticRules.put("customRule", customRule);
- mZenModeHelperSpy.mConfig.automaticRules = automaticRules;
+ mZenModeHelper.mConfig.automaticRules = automaticRules;
- ZenModeConfig expected = mZenModeHelperSpy.mConfig.copy();
+ ZenModeConfig expected = mZenModeHelper.mConfig.copy();
ByteArrayOutputStream baos = writeXmlAndPurge(null);
TypedXmlPullParser parser = Xml.newFastPullParser();
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(baos.toByteArray())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
ZenModeConfig.ZenRule original = expected.automaticRules.get(ruleId);
- ZenModeConfig.ZenRule current = mZenModeHelperSpy.mConfig.automaticRules.get(ruleId);
+ ZenModeConfig.ZenRule current = mZenModeHelper.mConfig.automaticRules.get(ruleId);
assertEquals("Automatic rules mismatch", original, current);
}
@@ -1160,16 +1153,16 @@ public class ZenModeHelperTest extends UiServiceTestCase {
.allowReminders(true)
.build();
automaticRules.put(ruleId, customRule);
- mZenModeHelperSpy.mConfig.automaticRules = automaticRules;
+ mZenModeHelper.mConfig.automaticRules = automaticRules;
- ZenModeConfig expected = mZenModeHelperSpy.mConfig.copy();
+ ZenModeConfig expected = mZenModeHelper.mConfig.copy();
ByteArrayOutputStream baos = writeXmlAndPurgeForUser(null, UserHandle.USER_SYSTEM);
TypedXmlPullParser parser = getParserForByteStream(baos);
- mZenModeHelperSpy.readXml(parser, true, UserHandle.USER_SYSTEM);
+ mZenModeHelper.readXml(parser, true, UserHandle.USER_SYSTEM);
ZenModeConfig.ZenRule original = expected.automaticRules.get(ruleId);
- ZenModeConfig.ZenRule current = mZenModeHelperSpy.mConfig.automaticRules.get(ruleId);
+ ZenModeConfig.ZenRule current = mZenModeHelper.mConfig.automaticRules.get(ruleId);
assertEquals("Automatic rules mismatch", original, current);
}
@@ -1188,7 +1181,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
customRule.conditionId = ZenModeConfig.toScheduleConditionId(weeknights);
customRule.component = new ComponentName("android", "ScheduleConditionProvider");
enabledAutoRule.put("customRule", customRule);
- mZenModeHelperSpy.mConfig.automaticRules = enabledAutoRule;
+ mZenModeHelper.mConfig.automaticRules = enabledAutoRule;
// set previous version
ByteArrayOutputStream baos = writeXmlAndPurge(5);
@@ -1196,9 +1189,9 @@ public class ZenModeHelperTest extends UiServiceTestCase {
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(baos.toByteArray())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
- assertTrue(mZenModeHelperSpy.mConfig.automaticRules.containsKey("customRule"));
+ assertTrue(mZenModeHelper.mConfig.automaticRules.containsKey("customRule"));
setupZenConfigMaintained();
}
@@ -1216,9 +1209,9 @@ public class ZenModeHelperTest extends UiServiceTestCase {
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(xml.getBytes())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
- assertEquals(0, mZenModeHelperSpy.mConfig.suppressedVisualEffects);
+ assertEquals(0, mZenModeHelper.mConfig.suppressedVisualEffects);
xml = "<zen version=\"6\" user=\"0\">\n"
+ "<allow calls=\"false\" repeatCallers=\"false\" messages=\"true\" "
@@ -1232,9 +1225,9 @@ public class ZenModeHelperTest extends UiServiceTestCase {
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(xml.getBytes())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
- assertEquals(0, mZenModeHelperSpy.mConfig.suppressedVisualEffects);
+ assertEquals(0, mZenModeHelper.mConfig.suppressedVisualEffects);
}
@Test
@@ -1251,9 +1244,9 @@ public class ZenModeHelperTest extends UiServiceTestCase {
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(xml.getBytes())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
- assertEquals(0, mZenModeHelperSpy.mConfig.suppressedVisualEffects);
+ assertEquals(0, mZenModeHelper.mConfig.suppressedVisualEffects);
}
@Test
@@ -1270,13 +1263,13 @@ public class ZenModeHelperTest extends UiServiceTestCase {
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(xml.getBytes())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
assertEquals(SUPPRESSED_EFFECT_FULL_SCREEN_INTENT
| SUPPRESSED_EFFECT_LIGHTS
| SUPPRESSED_EFFECT_AMBIENT
| SUPPRESSED_EFFECT_PEEK,
- mZenModeHelperSpy.mConfig.suppressedVisualEffects);
+ mZenModeHelper.mConfig.suppressedVisualEffects);
xml = "<zen version=\"6\" user=\"0\">\n"
+ "<allow calls=\"false\" repeatCallers=\"false\" messages=\"true\" "
@@ -1290,9 +1283,9 @@ public class ZenModeHelperTest extends UiServiceTestCase {
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(xml.getBytes())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
- assertEquals(SUPPRESSED_EFFECT_PEEK, mZenModeHelperSpy.mConfig.suppressedVisualEffects);
+ assertEquals(SUPPRESSED_EFFECT_PEEK, mZenModeHelper.mConfig.suppressedVisualEffects);
xml = "<zen version=\"6\" user=\"0\">\n"
+ "<allow calls=\"false\" repeatCallers=\"false\" messages=\"true\" "
@@ -1306,12 +1299,12 @@ public class ZenModeHelperTest extends UiServiceTestCase {
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(xml.getBytes())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
assertEquals(SUPPRESSED_EFFECT_FULL_SCREEN_INTENT
| SUPPRESSED_EFFECT_LIGHTS
| SUPPRESSED_EFFECT_AMBIENT,
- mZenModeHelperSpy.mConfig.suppressedVisualEffects);
+ mZenModeHelper.mConfig.suppressedVisualEffects);
}
@Test
@@ -1320,7 +1313,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
// no enabled automatic zen rules and no default rules
// so rules should be overriden by default rules
- mZenModeHelperSpy.mConfig.automaticRules = new ArrayMap<>();
+ mZenModeHelper.mConfig.automaticRules = new ArrayMap<>();
// set previous version
ByteArrayOutputStream baos = writeXmlAndPurge(5);
@@ -1328,10 +1321,10 @@ public class ZenModeHelperTest extends UiServiceTestCase {
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(baos.toByteArray())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
// check default rules
- ArrayMap<String, ZenModeConfig.ZenRule> rules = mZenModeHelperSpy.mConfig.automaticRules;
+ ArrayMap<String, ZenModeConfig.ZenRule> rules = mZenModeHelper.mConfig.automaticRules;
assertTrue(rules.size() != 0);
for (String defaultId : ZenModeConfig.DEFAULT_RULE_IDS) {
assertTrue(rules.containsKey(defaultId));
@@ -1356,7 +1349,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
customRule.conditionId = ZenModeConfig.toScheduleConditionId(weeknights);
customRule.component = new ComponentName("android", "ScheduleConditionProvider");
disabledAutoRule.put("customRule", customRule);
- mZenModeHelperSpy.mConfig.automaticRules = disabledAutoRule;
+ mZenModeHelper.mConfig.automaticRules = disabledAutoRule;
// set previous version
ByteArrayOutputStream baos = writeXmlAndPurge(5);
@@ -1364,10 +1357,10 @@ public class ZenModeHelperTest extends UiServiceTestCase {
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(baos.toByteArray())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
// check default rules
- ArrayMap<String, ZenModeConfig.ZenRule> rules = mZenModeHelperSpy.mConfig.automaticRules;
+ ArrayMap<String, ZenModeConfig.ZenRule> rules = mZenModeHelper.mConfig.automaticRules;
assertTrue(rules.size() != 0);
for (String defaultId : ZenModeConfig.DEFAULT_RULE_IDS) {
assertTrue(rules.containsKey(defaultId));
@@ -1408,7 +1401,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
defaultScheduleRule.id = ZenModeConfig.EVERY_NIGHT_DEFAULT_RULE_ID;
automaticRules.put(ZenModeConfig.EVERY_NIGHT_DEFAULT_RULE_ID, defaultScheduleRule);
- mZenModeHelperSpy.mConfig.automaticRules = automaticRules;
+ mZenModeHelper.mConfig.automaticRules = automaticRules;
// set previous version
ByteArrayOutputStream baos = writeXmlAndPurge(5);
@@ -1416,10 +1409,10 @@ public class ZenModeHelperTest extends UiServiceTestCase {
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(baos.toByteArray())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
// check default rules
- ArrayMap<String, ZenModeConfig.ZenRule> rules = mZenModeHelperSpy.mConfig.automaticRules;
+ ArrayMap<String, ZenModeConfig.ZenRule> rules = mZenModeHelper.mConfig.automaticRules;
assertTrue(rules.size() != 0);
for (String defaultId : ZenModeConfig.DEFAULT_RULE_IDS) {
assertTrue(rules.containsKey(defaultId));
@@ -1477,7 +1470,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
.build();
automaticRules.put(ZenModeConfig.EVENTS_DEFAULT_RULE_ID, defaultEventRule);
- mZenModeHelperSpy.mConfig.automaticRules = automaticRules;
+ mZenModeHelper.mConfig.automaticRules = automaticRules;
// set previous version
ByteArrayOutputStream baos = writeXmlAndPurge(5);
@@ -1485,10 +1478,10 @@ public class ZenModeHelperTest extends UiServiceTestCase {
parser.setInput(new BufferedInputStream(
new ByteArrayInputStream(baos.toByteArray())), null);
parser.nextTag();
- mZenModeHelperSpy.readXml(parser, false, UserHandle.USER_ALL);
+ mZenModeHelper.readXml(parser, false, UserHandle.USER_ALL);
// check default rules
- ArrayMap<String, ZenModeConfig.ZenRule> rules = mZenModeHelperSpy.mConfig.automaticRules;
+ ArrayMap<String, ZenModeConfig.ZenRule> rules = mZenModeHelper.mConfig.automaticRules;
assertTrue(rules.size() != 0);
for (String defaultId : ZenModeConfig.DEFAULT_RULE_IDS) {
assertTrue(rules.containsKey(defaultId));
@@ -1498,32 +1491,32 @@ public class ZenModeHelperTest extends UiServiceTestCase {
setupZenConfigMaintained();
List<StatsEvent> events = new LinkedList<>();
- mZenModeHelperSpy.pullRules(events);
+ mZenModeHelper.pullRules(events);
assertEquals(4, events.size());
}
@Test
public void testCountdownConditionSubscription() throws Exception {
ZenModeConfig config = new ZenModeConfig();
- mZenModeHelperSpy.mConfig = config;
- mZenModeHelperSpy.mConditions.evaluateConfig(mZenModeHelperSpy.mConfig, null, true);
- assertEquals(0, mZenModeHelperSpy.mConditions.mSubscriptions.size());
+ mZenModeHelper.mConfig = config;
+ mZenModeHelper.mConditions.evaluateConfig(mZenModeHelper.mConfig, null, true);
+ assertEquals(0, mZenModeHelper.mConditions.mSubscriptions.size());
- mZenModeHelperSpy.mConfig.manualRule = new ZenModeConfig.ZenRule();
+ mZenModeHelper.mConfig.manualRule = new ZenModeConfig.ZenRule();
Uri conditionId = ZenModeConfig.toCountdownConditionId(9000000, false);
- mZenModeHelperSpy.mConfig.manualRule.conditionId = conditionId;
- mZenModeHelperSpy.mConfig.manualRule.component = new ComponentName("android",
+ mZenModeHelper.mConfig.manualRule.conditionId = conditionId;
+ mZenModeHelper.mConfig.manualRule.component = new ComponentName("android",
CountdownConditionProvider.class.getName());
- mZenModeHelperSpy.mConfig.manualRule.condition = new Condition(conditionId, "", "", "", 0,
+ mZenModeHelper.mConfig.manualRule.condition = new Condition(conditionId, "", "", "", 0,
STATE_TRUE, Condition.FLAG_RELEVANT_NOW);
- mZenModeHelperSpy.mConfig.manualRule.enabled = true;
- ZenModeConfig originalConfig = mZenModeHelperSpy.mConfig.copy();
+ mZenModeHelper.mConfig.manualRule.enabled = true;
+ ZenModeConfig originalConfig = mZenModeHelper.mConfig.copy();
- mZenModeHelperSpy.mConditions.evaluateConfig(mZenModeHelperSpy.mConfig, null, true);
+ mZenModeHelper.mConditions.evaluateConfig(mZenModeHelper.mConfig, null, true);
assertEquals(true, ZenModeConfig.isValidCountdownConditionId(conditionId));
- assertEquals(originalConfig, mZenModeHelperSpy.mConfig);
- assertEquals(1, mZenModeHelperSpy.mConditions.mSubscriptions.size());
+ assertEquals(originalConfig, mZenModeHelper.mConfig);
+ assertEquals(1, mZenModeHelper.mConditions.mSubscriptions.size());
}
@Test
@@ -1531,9 +1524,9 @@ public class ZenModeHelperTest extends UiServiceTestCase {
List<StatsEvent> events = new LinkedList<>();
ZenModeConfig config = new ZenModeConfig();
config.automaticRules = new ArrayMap<>();
- mZenModeHelperSpy.mConfig = config;
- mZenModeHelperSpy.updateDefaultZenRules(); // shouldn't throw null pointer
- mZenModeHelperSpy.pullRules(events); // shouldn't throw null pointer
+ mZenModeHelper.mConfig = config;
+ mZenModeHelper.updateDefaultZenRules(); // shouldn't throw null pointer
+ mZenModeHelper.pullRules(events); // shouldn't throw null pointer
}
@Test
@@ -1555,11 +1548,11 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ArrayMap<String, ZenModeConfig.ZenRule> autoRules = new ArrayMap<>();
autoRules.put(SCHEDULE_DEFAULT_RULE_ID, updatedDefaultRule);
- mZenModeHelperSpy.mConfig.automaticRules = autoRules;
+ mZenModeHelper.mConfig.automaticRules = autoRules;
- mZenModeHelperSpy.updateDefaultZenRules();
+ mZenModeHelper.updateDefaultZenRules();
assertEquals(updatedDefaultRule,
- mZenModeHelperSpy.mConfig.automaticRules.get(SCHEDULE_DEFAULT_RULE_ID));
+ mZenModeHelper.mConfig.automaticRules.get(SCHEDULE_DEFAULT_RULE_ID));
}
@Test
@@ -1581,11 +1574,11 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ArrayMap<String, ZenModeConfig.ZenRule> autoRules = new ArrayMap<>();
autoRules.put(SCHEDULE_DEFAULT_RULE_ID, updatedDefaultRule);
- mZenModeHelperSpy.mConfig.automaticRules = autoRules;
+ mZenModeHelper.mConfig.automaticRules = autoRules;
- mZenModeHelperSpy.updateDefaultZenRules();
+ mZenModeHelper.updateDefaultZenRules();
assertEquals(updatedDefaultRule,
- mZenModeHelperSpy.mConfig.automaticRules.get(SCHEDULE_DEFAULT_RULE_ID));
+ mZenModeHelper.mConfig.automaticRules.get(SCHEDULE_DEFAULT_RULE_ID));
}
@Test
@@ -1608,11 +1601,11 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ArrayMap<String, ZenModeConfig.ZenRule> autoRules = new ArrayMap<>();
autoRules.put(SCHEDULE_DEFAULT_RULE_ID, customDefaultRule);
- mZenModeHelperSpy.mConfig.automaticRules = autoRules;
+ mZenModeHelper.mConfig.automaticRules = autoRules;
- mZenModeHelperSpy.updateDefaultZenRules();
+ mZenModeHelper.updateDefaultZenRules();
ZenModeConfig.ZenRule ruleAfterUpdating =
- mZenModeHelperSpy.mConfig.automaticRules.get(SCHEDULE_DEFAULT_RULE_ID);
+ mZenModeHelper.mConfig.automaticRules.get(SCHEDULE_DEFAULT_RULE_ID);
assertEquals(customDefaultRule.enabled, ruleAfterUpdating.enabled);
assertEquals(customDefaultRule.modified, ruleAfterUpdating.modified);
assertEquals(customDefaultRule.id, ruleAfterUpdating.id);
@@ -1633,7 +1626,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
// We need the package name to be something that's not "android" so there aren't any
// existing rules under that package.
- String id = mZenModeHelperSpy.addAutomaticZenRule("pkgname", zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule("pkgname", zenRule, "test");
assertNotNull(id);
}
try {
@@ -1643,7 +1636,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ZenModeConfig.toScheduleConditionId(new ScheduleInfo()),
new ZenPolicy.Builder().build(),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule("pkgname", zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule("pkgname", zenRule, "test");
fail("allowed too many rules to be created");
} catch (IllegalArgumentException e) {
// yay
@@ -1663,7 +1656,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ZenModeConfig.toScheduleConditionId(si),
new ZenPolicy.Builder().build(),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule("pkgname", zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule("pkgname", zenRule, "test");
assertNotNull(id);
}
try {
@@ -1673,7 +1666,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ZenModeConfig.toScheduleConditionId(new ScheduleInfo()),
new ZenPolicy.Builder().build(),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule("pkgname", zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule("pkgname", zenRule, "test");
fail("allowed too many rules to be created");
} catch (IllegalArgumentException e) {
// yay
@@ -1693,7 +1686,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ZenModeConfig.toScheduleConditionId(si),
new ZenPolicy.Builder().build(),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule("pkgname", zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule("pkgname", zenRule, "test");
assertNotNull(id);
}
try {
@@ -1703,7 +1696,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ZenModeConfig.toScheduleConditionId(new ScheduleInfo()),
new ZenPolicy.Builder().build(),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule("pkgname", zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule("pkgname", zenRule, "test");
fail("allowed too many rules to be created");
} catch (IllegalArgumentException e) {
// yay
@@ -1718,10 +1711,10 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ZenModeConfig.toScheduleConditionId(new ScheduleInfo()),
new ZenPolicy.Builder().build(),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule("android", zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule("android", zenRule, "test");
assertTrue(id != null);
- ZenModeConfig.ZenRule ruleInConfig = mZenModeHelperSpy.mConfig.automaticRules.get(id);
+ ZenModeConfig.ZenRule ruleInConfig = mZenModeHelper.mConfig.automaticRules.get(id);
assertTrue(ruleInConfig != null);
assertEquals(zenRule.isEnabled(), ruleInConfig.enabled);
assertEquals(zenRule.isModified(), ruleInConfig.modified);
@@ -1738,10 +1731,10 @@ public class ZenModeHelperTest extends UiServiceTestCase {
new ComponentName("android", "ScheduleConditionProvider"),
ZenModeConfig.toScheduleConditionId(new ScheduleInfo()),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule("android", zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule("android", zenRule, "test");
assertTrue(id != null);
- ZenModeConfig.ZenRule ruleInConfig = mZenModeHelperSpy.mConfig.automaticRules.get(id);
+ ZenModeConfig.ZenRule ruleInConfig = mZenModeHelper.mConfig.automaticRules.get(id);
assertTrue(ruleInConfig != null);
assertEquals(zenRule.isEnabled(), ruleInConfig.enabled);
assertEquals(zenRule.isModified(), ruleInConfig.modified);
@@ -1761,11 +1754,11 @@ public class ZenModeHelperTest extends UiServiceTestCase {
new ZenPolicy.Builder().build(),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule(null, zenRule, "test");
- mZenModeHelperSpy.setAutomaticZenRuleState(zenRule.getConditionId(),
+ String id = mZenModeHelper.addAutomaticZenRule(null, zenRule, "test");
+ mZenModeHelper.setAutomaticZenRuleState(zenRule.getConditionId(),
new Condition(zenRule.getConditionId(), "", STATE_TRUE));
- ZenModeConfig.ZenRule ruleInConfig = mZenModeHelperSpy.mConfig.automaticRules.get(id);
+ ZenModeConfig.ZenRule ruleInConfig = mZenModeHelper.mConfig.automaticRules.get(id);
assertEquals(STATE_TRUE, ruleInConfig.condition.state);
}
@@ -1778,7 +1771,7 @@ public class ZenModeHelperTest extends UiServiceTestCase {
new ZenPolicy.Builder().build(),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule(null, zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule(null, zenRule, "test");
AutomaticZenRule zenRule2 = new AutomaticZenRule("NEW",
null,
@@ -1787,9 +1780,9 @@ public class ZenModeHelperTest extends UiServiceTestCase {
new ZenPolicy.Builder().build(),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- mZenModeHelperSpy.updateAutomaticZenRule(id, zenRule2, "");
+ mZenModeHelper.updateAutomaticZenRule(id, zenRule2, "");
- ZenModeConfig.ZenRule ruleInConfig = mZenModeHelperSpy.mConfig.automaticRules.get(id);
+ ZenModeConfig.ZenRule ruleInConfig = mZenModeHelper.mConfig.automaticRules.get(id);
assertEquals("NEW", ruleInConfig.name);
}
@@ -1802,15 +1795,15 @@ public class ZenModeHelperTest extends UiServiceTestCase {
new ZenPolicy.Builder().build(),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule(null, zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule(null, zenRule, "test");
assertTrue(id != null);
- ZenModeConfig.ZenRule ruleInConfig = mZenModeHelperSpy.mConfig.automaticRules.get(id);
+ ZenModeConfig.ZenRule ruleInConfig = mZenModeHelper.mConfig.automaticRules.get(id);
assertTrue(ruleInConfig != null);
assertEquals(zenRule.getName(), ruleInConfig.name);
- mZenModeHelperSpy.removeAutomaticZenRule(id, "test");
- assertNull(mZenModeHelperSpy.mConfig.automaticRules.get(id));
+ mZenModeHelper.removeAutomaticZenRule(id, "test");
+ assertNull(mZenModeHelper.mConfig.automaticRules.get(id));
}
@Test
@@ -1821,15 +1814,15 @@ public class ZenModeHelperTest extends UiServiceTestCase {
ZenModeConfig.toScheduleConditionId(new ScheduleInfo()),
new ZenPolicy.Builder().build(),
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule(null, zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule(null, zenRule, "test");
assertTrue(id != null);
- ZenModeConfig.ZenRule ruleInConfig = mZenModeHelperSpy.mConfig.automaticRules.get(id);
+ ZenModeConfig.ZenRule ruleInConfig = mZenModeHelper.mConfig.automaticRules.get(id);
assertTrue(ruleInConfig != null);
assertEquals(zenRule.getName(), ruleInConfig.name);
- mZenModeHelperSpy.removeAutomaticZenRules(mContext.getPackageName(), "test");
- assertNull(mZenModeHelperSpy.mConfig.automaticRules.get(id));
+ mZenModeHelper.removeAutomaticZenRules(mContext.getPackageName(), "test");
+ assertNull(mZenModeHelper.mConfig.automaticRules.get(id));
}
@Test
@@ -1839,17 +1832,17 @@ public class ZenModeHelperTest extends UiServiceTestCase {
new ComponentName("android", "ScheduleConditionProvider"),
sharedUri,
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id = mZenModeHelperSpy.addAutomaticZenRule("android", zenRule, "test");
+ String id = mZenModeHelper.addAutomaticZenRule("android", zenRule, "test");
AutomaticZenRule zenRule2 = new AutomaticZenRule("name2",
new ComponentName("android", "ScheduleConditionProvider"),
sharedUri,
NotificationManager.INTERRUPTION_FILTER_PRIORITY, true);
- String id2 = mZenModeHelperSpy.addAutomaticZenRule("android", zenRule2, "test");
+ String id2 = mZenModeHelper.addAutomaticZenRule("android", zenRule2, "test");
Condition condition = new Condition(sharedUri, "", STATE_TRUE);
- mZenModeHelperSpy.setAutomaticZenRuleState(sharedUri, condition);
+ mZenModeHelper.setAutomaticZenRuleState(sharedUri, condition);
- for (ZenModeConfig.ZenRule rule : mZenModeHelperSpy.mConfig.automaticRules.values()) {
+ for (ZenModeConfig.ZenRule rule : mZenModeHelper.mConfig.automaticRules.values()) {
if (rule.id.equals(id)) {
assertNotNull(rule.condition);
assertTrue(rule.condition.state == STATE_TRUE);
@@ -1861,9 +1854,9 @@ public class ZenModeHelperTest extends UiServiceTestCase {
}
condition = new Condition(sharedUri, "", Condition.STATE_FALSE);
- mZenModeHelperSpy.setAutomaticZenRuleState(sharedUri, condition);
+ mZenModeHelper.setAutomaticZenRuleState(sharedUri, condition);
- for (ZenModeConfig.ZenRule rule : mZenModeHelperSpy.mConfig.automaticRules.values()) {
+ for (ZenModeConfig.ZenRule rule : mZenModeHelper.mConfig.automaticRules.values()) {
if (rule.id.equals(id)) {
assertNotNull(rule.condition);
assertTrue(rule.condition.state == Condition.STATE_FALSE);
@@ -1875,31 +1868,48 @@ public class ZenModeHelperTest extends UiServiceTestCase {
}
}
+ @Test
+ public void testSetManualZenMode() {
+ setupZenConfig();
+
+ // note that caller=null because that's how it comes in from NMS.setZenMode
+ mZenModeHelper.setManualZenMode(ZEN_MODE_IMPORTANT_INTERRUPTIONS, null, null, "");
+ mTestableLooper.processAllMessages();
+
+ // confirm that setting zen mode via setManualZenMode changed the zen mode correctly
+ assertEquals(ZEN_MODE_IMPORTANT_INTERRUPTIONS, mZenModeHelper.mZenMode);
+
+ // and also that it works to turn it back off again
+ mZenModeHelper.setManualZenMode(Global.ZEN_MODE_OFF, null, null, "");
+ mTestableLooper.processAllMessages();
+ assertEquals(Global.ZEN_MODE_OFF, mZenModeHelper.mZenMode);
+ }
+
private void setupZenConfig() {
- mZenModeHelperSpy.mZenMode = ZEN_MODE_IMPORTANT_INTERRUPTIONS;
- mZenModeHelperSpy.mConfig.allowAlarms = false;
- mZenModeHelperSpy.mConfig.allowMedia = false;
- mZenModeHelperSpy.mConfig.allowSystem = false;
- mZenModeHelperSpy.mConfig.allowReminders = true;
- mZenModeHelperSpy.mConfig.allowCalls = true;
- mZenModeHelperSpy.mConfig.allowMessages = true;
- mZenModeHelperSpy.mConfig.allowEvents = true;
- mZenModeHelperSpy.mConfig.allowRepeatCallers= true;
- mZenModeHelperSpy.mConfig.suppressedVisualEffects = SUPPRESSED_EFFECT_BADGE;
- mZenModeHelperSpy.mConfig.manualRule = null;
+ mZenModeHelper.mZenMode = Global.ZEN_MODE_OFF;
+ mZenModeHelper.mConfig.allowAlarms = false;
+ mZenModeHelper.mConfig.allowMedia = false;
+ mZenModeHelper.mConfig.allowSystem = false;
+ mZenModeHelper.mConfig.allowReminders = true;
+ mZenModeHelper.mConfig.allowCalls = true;
+ mZenModeHelper.mConfig.allowMessages = true;
+ mZenModeHelper.mConfig.allowEvents = true;
+ mZenModeHelper.mConfig.allowRepeatCallers = true;
+ mZenModeHelper.mConfig.suppressedVisualEffects = SUPPRESSED_EFFECT_BADGE;
+ mZenModeHelper.mConfig.manualRule = null;
}
private void setupZenConfigMaintained() {
// config is still the same as when it was setup (setupZenConfig)
- assertFalse(mZenModeHelperSpy.mConfig.allowAlarms);
- assertFalse(mZenModeHelperSpy.mConfig.allowMedia);
- assertFalse(mZenModeHelperSpy.mConfig.allowSystem);
- assertTrue(mZenModeHelperSpy.mConfig.allowReminders);
- assertTrue(mZenModeHelperSpy.mConfig.allowCalls);
- assertTrue(mZenModeHelperSpy.mConfig.allowMessages);
- assertTrue(mZenModeHelperSpy.mConfig.allowEvents);
- assertTrue(mZenModeHelperSpy.mConfig.allowRepeatCallers);
- assertEquals(SUPPRESSED_EFFECT_BADGE, mZenModeHelperSpy.mConfig.suppressedVisualEffects);
+ assertFalse(mZenModeHelper.mConfig.allowAlarms);
+ assertFalse(mZenModeHelper.mConfig.allowMedia);
+ assertFalse(mZenModeHelper.mConfig.allowSystem);
+ assertTrue(mZenModeHelper.mConfig.allowReminders);
+ assertTrue(mZenModeHelper.mConfig.allowCalls);
+ assertTrue(mZenModeHelper.mConfig.allowMessages);
+ assertTrue(mZenModeHelper.mConfig.allowEvents);
+ assertTrue(mZenModeHelper.mConfig.allowRepeatCallers);
+ assertEquals(SUPPRESSED_EFFECT_BADGE, mZenModeHelper.mConfig.suppressedVisualEffects);
}
/**