Inline MODES_API flag

Bug: 310620812
Test: Preexisting
Flag: EXEMPT Inlining flag
Change-Id: I54ad81d87ea4ce85940400b0e8680a1bac0ca342
This commit is contained in:
Matías Hernández
2025-02-11 15:12:06 +01:00
parent d9214f1328
commit 7235474792
29 changed files with 53 additions and 135 deletions

View File

@@ -22,7 +22,6 @@ import android.content.ComponentName;
import android.content.Context;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.os.AsyncTask;
import androidx.annotation.NonNull;
import androidx.annotation.VisibleForTesting;
@@ -139,13 +138,8 @@ public class ApprovalPreferenceController extends BasePreferenceController {
public void disable(final ComponentName cn) {
logSpecialPermissionChange(true, cn.getPackageName());
mNm.setNotificationListenerAccessGranted(cn, false);
if (!mNm.isNotificationPolicyAccessGrantedForPackage(
cn.getPackageName())) {
if (android.app.Flags.modesApi()) {
mNm.removeAutomaticZenRules(cn.getPackageName(), /* fromUser= */ true);
} else {
mNm.removeAutomaticZenRules(cn.getPackageName());
}
if (!mNm.isNotificationPolicyAccessGrantedForPackage(cn.getPackageName())) {
mNm.removeAutomaticZenRules(cn.getPackageName(), /* fromUser= */ true);
}
}

View File

@@ -56,7 +56,7 @@ public class FriendlyWarningDialogFragment extends InstrumentedDialogFragment {
NotificationAccessDetails parent = (NotificationAccessDetails) getTargetFragment();
final String summary = getResources().getString(
Flags.modesApi() && Flags.modesUi()
Flags.modesUi()
? R.string.notification_listener_disable_modes_warning_summary
: R.string.notification_listener_disable_warning_summary,
label);

View File

@@ -98,7 +98,7 @@ public class ScaryWarningDialogFragment extends InstrumentedDialogFragment {
((TextView) content.findViewById(R.id.prompt)).setText(prompt);
((TextView) content.findViewById(R.id.settings_description)).setText(
Flags.modesApi() && Flags.modesUi()
Flags.modesUi()
? R.string.nls_feature_modes_settings_summary
: R.string.nls_feature_settings_summary);

View File

@@ -59,12 +59,12 @@ public class FriendlyWarningDialogFragment extends InstrumentedDialogFragment {
final String label = args.getString(KEY_LABEL);
final String title = getResources().getString(
Flags.modesApi() && Flags.modesUi()
Flags.modesUi()
? R.string.zen_modes_access_revoke_warning_dialog_title
: R.string.zen_access_revoke_warning_dialog_title,
label);
final String summary = getResources()
.getString(Flags.modesApi() && Flags.modesUi()
.getString(Flags.modesUi()
? R.string.zen_modes_access_revoke_warning_dialog_summary
: R.string.zen_access_revoke_warning_dialog_summary);

View File

@@ -57,12 +57,12 @@ public class ScaryWarningDialogFragment extends InstrumentedDialogFragment {
final String label = args.getString(KEY_LABEL);
final String title = getResources().getString(
Flags.modesApi() && Flags.modesUi()
Flags.modesUi()
? R.string.zen_modes_access_warning_dialog_title
: R.string.zen_access_warning_dialog_title,
label);
final String summary = getResources()
.getString(Flags.modesApi() && Flags.modesUi()
.getString(Flags.modesUi()
? R.string.zen_modes_access_warning_dialog_summary
: R.string.zen_access_warning_dialog_summary);

View File

@@ -56,7 +56,7 @@ public class ZenAccessController extends BasePreferenceController {
public void displayPreference(PreferenceScreen screen) {
Preference preference = screen.findPreference(getPreferenceKey());
if (preference != null) {
preference.setTitle(Flags.modesApi() && Flags.modesUi()
preference.setTitle(Flags.modesUi()
? R.string.manage_zen_modes_access_title
: R.string.manage_zen_access_title);
}
@@ -116,11 +116,7 @@ public class ZenAccessController extends BasePreferenceController {
public static void deleteRules(final Context context, final String pkg) {
final NotificationManager mgr = context.getSystemService(NotificationManager.class);
if (android.app.Flags.modesApi()) {
mgr.removeAutomaticZenRules(pkg, /* fromUser= */ true);
} else {
mgr.removeAutomaticZenRules(pkg);
}
mgr.removeAutomaticZenRules(pkg, /* fromUser= */ true);
}
@VisibleForTesting

View File

@@ -51,7 +51,7 @@ public class ZenAccessDetails extends AppInfoWithHeader implements
@Override
public void onResume() {
super.onResume();
requireActivity().setTitle(Flags.modesApi() && Flags.modesUi()
requireActivity().setTitle(Flags.modesUi()
? R.string.manage_zen_modes_access_title
: R.string.manage_zen_access_title);
}
@@ -89,7 +89,7 @@ public class ZenAccessDetails extends AppInfoWithHeader implements
preference.setSummary(getString(R.string.zen_access_disabled_package_warning));
return;
}
preference.setTitle(Flags.modesApi() && Flags.modesUi()
preference.setTitle(Flags.modesUi()
? R.string.zen_modes_access_detail_switch
: R.string.zen_access_detail_switch);
preference.setChecked(ZenAccessController.hasAccess(context, mPackageName));

View File

@@ -16,7 +16,6 @@
package com.android.settings.homepage.contextualcards.conditional;
import android.app.Flags;
import android.app.NotificationManager;
import android.app.settings.SettingsEnums;
import android.content.BroadcastReceiver;
@@ -87,12 +86,8 @@ public class DndConditionCardController implements ConditionalCardController {
@Override
public void onActionClick() {
if (Flags.modesApi()) {
mNotificationManager.setZenMode(Settings.Global.ZEN_MODE_OFF, null, TAG,
/* fromUser= */ true);
} else {
mNotificationManager.setZenMode(Settings.Global.ZEN_MODE_OFF, null, TAG);
}
mNotificationManager.setZenMode(Settings.Global.ZEN_MODE_OFF, null, TAG,
/* fromUser= */ true);
}
@Override

View File

@@ -59,7 +59,7 @@ abstract class AbstractZenModeHeaderController extends AbstractZenModePreference
@Override
public boolean isAvailable() {
return Flags.modesApi() && Flags.modesUi();
return Flags.modesUi();
}
protected void setUpHeader(PreferenceScreen screen, int iconSizePx) {

View File

@@ -43,7 +43,7 @@ class ZenSettingsObserver extends ContentObserver {
}
void register() {
if (Flags.modesApi() && Flags.modesUi()) {
if (Flags.modesUi()) {
mContext.getContentResolver().registerContentObserver(ZEN_MODE_URI, false, this);
mContext.getContentResolver().registerContentObserver(ZEN_MODE_CONFIG_ETAG_URI, false,
this);
@@ -51,7 +51,7 @@ class ZenSettingsObserver extends ContentObserver {
}
void unregister() {
if (Flags.modesApi() && Flags.modesUi()) {
if (Flags.modesUi()) {
mContext.getContentResolver().unregisterContentObserver(this);
}
}

View File

@@ -167,7 +167,7 @@ abstract public class AbstractZenModeAutomaticRulePreferenceController extends
mMetricsFeatureProvider.action(mContext,
SettingsEnums.ACTION_ZEN_MODE_RULE_NAME_CHANGE_OK);
AutomaticZenRule rule;
if (Flags.modesApi() && Flags.modesUi()) {
if (Flags.modesUi()) {
rule = new AutomaticZenRule.Builder(ruleName, mRuleInfo.defaultConditionId)
.setType(mRuleInfo.type)
.setOwner(mRuleInfo.serviceComponent)

View File

@@ -76,7 +76,7 @@ public class ZenAccessSettings extends EmptyTextSettings implements
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
setEmptyText(Flags.modesApi() && Flags.modesUi()
setEmptyText(Flags.modesUi()
? R.string.zen_modes_access_empty_text
: R.string.zen_access_empty_text);
}
@@ -89,7 +89,7 @@ public class ZenAccessSettings extends EmptyTextSettings implements
@Override
public void onResume() {
super.onResume();
requireActivity().setTitle(Flags.modesApi() && Flags.modesUi()
requireActivity().setTitle(Flags.modesUi()
? R.string.manage_zen_modes_access_title
: R.string.manage_zen_access_title);
reloadList();
@@ -145,7 +145,7 @@ public class ZenAccessSettings extends EmptyTextSettings implements
pref.setOnPreferenceClickListener(preference -> {
AppInfoBase.startAppInfoFragment(
ZenAccessDetails.class /* fragment */,
getString(Flags.modesApi() && Flags.modesUi()
getString(Flags.modesUi()
? R.string.manage_zen_modes_access_title
: R.string.manage_zen_access_title),
pkg,

View File

@@ -95,32 +95,19 @@ public class ZenModeBackend {
}
protected boolean updateZenRule(String id, AutomaticZenRule rule) {
if (android.app.Flags.modesApi()) {
return mNotificationManager.updateAutomaticZenRule(id, rule, /* fromUser= */ true);
} else {
return NotificationManager.from(mContext).updateAutomaticZenRule(id, rule);
}
return mNotificationManager.updateAutomaticZenRule(id, rule, /* fromUser= */ true);
}
protected void setZenMode(int zenMode) {
if (android.app.Flags.modesApi()) {
mNotificationManager.setZenMode(zenMode, null, TAG, /* fromUser= */ true);
} else {
NotificationManager.from(mContext).setZenMode(zenMode, null, TAG);
}
mNotificationManager.setZenMode(zenMode, null, TAG, /* fromUser= */ true);
mZenMode = getZenMode();
}
protected void setZenModeForDuration(int minutes) {
Uri conditionId = ZenModeConfig.toTimeCondition(mContext, minutes,
ActivityManager.getCurrentUser(), true).id;
if (android.app.Flags.modesApi()) {
mNotificationManager.setZenMode(Settings.Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS,
conditionId, TAG, /* fromUser= */ true);
} else {
mNotificationManager.setZenMode(Settings.Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS,
conditionId, TAG);
}
mNotificationManager.setZenMode(Settings.Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS,
conditionId, TAG, /* fromUser= */ true);
mZenMode = getZenMode();
}
@@ -190,14 +177,9 @@ public class ZenModeBackend {
int priorityConversationSenders) {
mPolicy = new NotificationManager.Policy(priorityCategories, priorityCallSenders,
priorityMessageSenders, suppressedVisualEffects, priorityConversationSenders);
if (android.app.Flags.modesApi()) {
mNotificationManager.setNotificationPolicy(mPolicy, /* fromUser= */ true);
} else {
mNotificationManager.setNotificationPolicy(mPolicy);
}
mNotificationManager.setNotificationPolicy(mPolicy, /* fromUser= */ true);
}
private int getNewSuppressedEffects(boolean suppress, int effectType) {
int effects = mPolicy.suppressedVisualEffects;
@@ -373,11 +355,7 @@ public class ZenModeBackend {
}
public boolean removeZenRule(String ruleId) {
if (android.app.Flags.modesApi()) {
return mNotificationManager.removeAutomaticZenRule(ruleId, /* fromUser= */ true);
} else {
return NotificationManager.from(mContext).removeAutomaticZenRule(ruleId);
}
return mNotificationManager.removeAutomaticZenRule(ruleId, /* fromUser= */ true);
}
public NotificationManager.Policy getConsolidatedPolicy() {
@@ -386,11 +364,7 @@ public class ZenModeBackend {
protected String addZenRule(AutomaticZenRule rule) {
try {
if (android.app.Flags.modesApi()) {
return mNotificationManager.addAutomaticZenRule(rule, /* fromUser= */ true);
} else {
return NotificationManager.from(mContext).addAutomaticZenRule(rule);
}
return mNotificationManager.addAutomaticZenRule(rule, /* fromUser= */ true);
} catch (Exception e) {
return null;
}

View File

@@ -104,16 +104,11 @@ public abstract class ZenModeRuleSettingsBase extends ZenModeSettingsBase {
Bundle bundle = new Bundle();
bundle.putString(ZenCustomRuleSettings.RULE_ID, mId);
// When modes_api flag is on, we skip the radio button screen distinguishing
// between "default" and "custom" and take users directly to the custom
// settings screen.
String destination = ZenCustomRuleSettings.class.getName();
int sourceMetricsCategory = 0;
if (Flags.modesApi()) {
// From ZenRuleCustomPolicyPreferenceController#launchCustomSettings
destination = ZenCustomRuleConfigSettings.class.getName();
sourceMetricsCategory = SettingsEnums.ZEN_CUSTOM_RULE_SOUND_SETTINGS;
}
// Skip the radio button screen distinguishing between "default" and
// "custom" and take users directly to the custom settings screen.
// From ZenRuleCustomPolicyPreferenceController#launchCustomSettings
String destination = ZenCustomRuleConfigSettings.class.getName();
int sourceMetricsCategory = SettingsEnums.ZEN_CUSTOM_RULE_SOUND_SETTINGS;
new SubSettingLauncher(mContext)
.setDestination(destination)
.setArguments(bundle)
@@ -165,7 +160,7 @@ public abstract class ZenModeRuleSettingsBase extends ZenModeSettingsBase {
protected void updateScheduleRule(ZenModeConfig.ScheduleInfo schedule) {
mRule.setConditionId(ZenModeConfig.toScheduleConditionId(schedule));
if (Flags.modesApi() && Flags.modesUi()) {
if (Flags.modesUi()) {
mRule.setTriggerDescription(
SystemZenRules.getTriggerDescriptionForScheduleTime(mContext, schedule));
}
@@ -174,7 +169,7 @@ public abstract class ZenModeRuleSettingsBase extends ZenModeSettingsBase {
protected void updateEventRule(ZenModeConfig.EventInfo event) {
mRule.setConditionId(ZenModeConfig.toEventConditionId(event));
if (Flags.modesApi() && Flags.modesUi()) {
if (Flags.modesUi()) {
mRule.setTriggerDescription(
SystemZenRules.getTriggerDescriptionForScheduleEvent(mContext, event));
}

View File

@@ -19,7 +19,6 @@ package com.android.settings.notification.zen;
import static android.app.slice.Slice.EXTRA_TOGGLE_STATE;
import android.annotation.ColorInt;
import android.app.Flags;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.settings.SettingsEnums;
@@ -117,12 +116,8 @@ public class ZenModeSliceBuilder {
} else {
zenMode = Settings.Global.ZEN_MODE_OFF;
}
if (Flags.modesApi()) {
NotificationManager.from(context).setZenMode(zenMode, /* conditionId= */ null, TAG,
/* fromUser= */ true);
} else {
NotificationManager.from(context).setZenMode(zenMode, null /* conditionId */, TAG);
}
NotificationManager.from(context).setZenMode(zenMode, /* conditionId= */ null, TAG,
/* fromUser= */ true);
// Do not notifyChange on Uri. The service takes longer to update the current value than it
// does for the Slice to check the current value again. Let {@link SliceBroadcastRelay}
// handle it.

View File

@@ -19,19 +19,14 @@ package com.android.settings.notification.zen;
import android.app.AutomaticZenRule;
import android.app.settings.SettingsEnums;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import androidx.fragment.app.Fragment;
import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.core.SubSettingLauncher;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.widget.ActionButtonsPreference;
@@ -87,7 +82,6 @@ public class ZenRuleButtonsPreferenceController extends AbstractZenModePreferenc
mMetricsFeatureProvider.action(mContext,
SettingsEnums.ACTION_ZEN_MODE_RULE_NAME_CHANGE_OK);
mRule.setName(ruleName);
mRule.setModified(true);
mBackend.updateZenRule(mId, mRule);
}
});

View File

@@ -143,8 +143,7 @@ public class ZenRulePreference extends PrimarySwitchPreference {
private String computeRuleSummary(AutomaticZenRule rule) {
if (rule != null) {
if (Flags.modesApi() && Flags.modesUi()
&& !TextUtils.isEmpty(rule.getTriggerDescription())) {
if (Flags.modesUi() && !TextUtils.isEmpty(rule.getTriggerDescription())) {
return rule.getTriggerDescription();
}

View File

@@ -181,7 +181,7 @@ public class ZenRuleSelectionDialog extends InstrumentedDialogFragment {
rt.title = mContext.getString(R.string.zen_schedule_rule_type_name);
rt.packageName = ZenModeConfig.getEventConditionProvider().getPackageName();
rt.defaultConditionId = ZenModeConfig.toScheduleConditionId(schedule);
if (Flags.modesApi() && Flags.modesUi()) {
if (Flags.modesUi()) {
rt.type = AutomaticZenRule.TYPE_SCHEDULE_TIME;
rt.defaultTriggerDescription = SystemZenRules.getTriggerDescriptionForScheduleTime(
mContext, schedule);
@@ -201,7 +201,7 @@ public class ZenRuleSelectionDialog extends InstrumentedDialogFragment {
rt.title = mContext.getString(R.string.zen_event_rule_type_name);
rt.packageName = ZenModeConfig.getScheduleConditionProvider().getPackageName();
rt.defaultConditionId = ZenModeConfig.toEventConditionId(event);
if (Flags.modesApi() && Flags.modesUi()) {
if (Flags.modesUi()) {
rt.type = AutomaticZenRule.TYPE_SCHEDULE_CALENDAR;
rt.defaultTriggerDescription = SystemZenRules.getTriggerDescriptionForScheduleEvent(
mContext, event);

View File

@@ -32,7 +32,7 @@ public class ShortcutsUpdateReceiver extends BroadcastReceiver {
@Override
public void onReceive(@NonNull Context context, @NonNull Intent intent) {
if (!Flags.modesApi() || !Flags.modesUi()) {
if (!Flags.modesUi()) {
return;
}

View File

@@ -86,7 +86,7 @@ public class ShortcutsUpdater {
private static ComponentName maybeGetReplacingComponent(Context context, ComponentName cn) {
// ZenModeSettingsActivity is replaced by ModesSettingsActivity and will be deleted
// soon (so we shouldn't use ZenModeSettingsActivity.class).
if (Flags.modesApi() && Flags.modesUi()
if (Flags.modesUi()
&& cn.getClassName().endsWith("Settings$ZenModeSettingsActivity")) {
return new ComponentName(context, Settings.ModesSettingsActivity.class);
}

View File

@@ -33,7 +33,7 @@ public class TopLevelSoundPreferenceController extends BasePreferenceController
@Override
public void updateState(Preference preference) {
super.updateState(preference);
preference.setSummary(Flags.modesApi() && Flags.modesUi()
preference.setSummary(Flags.modesUi()
? R.string.sound_dashboard_summary
: R.string.sound_dashboard_summary_with_dnd);
}

View File

@@ -102,7 +102,7 @@ public class DndConditionalCardControllerTest {
private ZenModeConfig getMutedAllConfig() {
final ZenModeConfig config = new ZenModeConfig();
config.applyNotificationPolicy(new NotificationManager.Policy(0, 0, 0));
config.areChannelsBypassingDnd = false;
config.hasPriorityChannels = false;
return config;
}
}

View File

@@ -85,7 +85,7 @@ public class ZenModeSetCalendarPreferenceControllerTest {
}
@Test
@EnableFlags({Flags.FLAG_MODES_API, Flags.FLAG_MODES_UI})
@EnableFlags(Flags.FLAG_MODES_UI)
public void updateEventMode_updatesConditionAndTriggerDescription() {
ZenMode mode = new TestModeBuilder()
.setPackage(SystemZenRules.PACKAGE_ANDROID)

View File

@@ -80,7 +80,7 @@ public class ZenModeSetSchedulePreferenceControllerTest {
}
@Test
@EnableFlags({Flags.FLAG_MODES_API, Flags.FLAG_MODES_UI})
@EnableFlags(Flags.FLAG_MODES_UI)
public void updateScheduleRule_updatesConditionAndTriggerDescription() {
ZenMode mode = new TestModeBuilder()
.setPackage(SystemZenRules.PACKAGE_ANDROID)

View File

@@ -213,11 +213,7 @@ public class ZenModeBackendTest {
mBackend.saveConversationSenders(CONVERSATION_SENDERS_NONE);
ArgumentCaptor<Policy> captor = ArgumentCaptor.forClass(Policy.class);
if (android.app.Flags.modesApi()) {
verify(mNotificationManager).setNotificationPolicy(captor.capture(), eq(true));
} else {
verify(mNotificationManager).setNotificationPolicy(captor.capture());
}
verify(mNotificationManager).setNotificationPolicy(captor.capture(), eq(true));
Policy expected = new Policy(
PRIORITY_CATEGORY_CALLS | PRIORITY_CATEGORY_MESSAGES | PRIORITY_CATEGORY_ALARMS,
@@ -241,11 +237,7 @@ public class ZenModeBackendTest {
mBackend.saveConversationSenders(CONVERSATION_SENDERS_ANYONE);
ArgumentCaptor<Policy> captor = ArgumentCaptor.forClass(Policy.class);
if (android.app.Flags.modesApi()) {
verify(mNotificationManager).setNotificationPolicy(captor.capture(), eq(true));
} else {
verify(mNotificationManager).setNotificationPolicy(captor.capture());
}
verify(mNotificationManager).setNotificationPolicy(captor.capture(), eq(true));
Policy expected = new Policy(PRIORITY_CATEGORY_CONVERSATIONS
| PRIORITY_CATEGORY_CALLS | PRIORITY_CATEGORY_MESSAGES | PRIORITY_CATEGORY_ALARMS,
@@ -270,11 +262,7 @@ public class ZenModeBackendTest {
mBackend.saveSenders(PRIORITY_CATEGORY_CALLS, PRIORITY_SENDERS_ANY);
ArgumentCaptor<Policy> captor = ArgumentCaptor.forClass(Policy.class);
if (android.app.Flags.modesApi()) {
verify(mNotificationManager).setNotificationPolicy(captor.capture(), eq(true));
} else {
verify(mNotificationManager).setNotificationPolicy(captor.capture());
}
verify(mNotificationManager).setNotificationPolicy(captor.capture(), eq(true));
Policy expected = new Policy(PRIORITY_CATEGORY_CONVERSATIONS
| PRIORITY_CATEGORY_CALLS | PRIORITY_CATEGORY_MESSAGES | PRIORITY_CATEGORY_ALARMS,

View File

@@ -107,7 +107,7 @@ public class ZenModeEventRuleSettingsTest {
}
@Test
@EnableFlags({Flags.FLAG_MODES_API, Flags.FLAG_MODES_UI})
@EnableFlags(Flags.FLAG_MODES_UI)
public void updateEventRule_updatesConditionAndTriggerDescription() {
mFragment.setBackend(mBackend);
mFragment.mId = "id";

View File

@@ -107,7 +107,7 @@ public class ZenModeScheduleRuleSettingsTest {
}
@Test
@EnableFlags({Flags.FLAG_MODES_API, Flags.FLAG_MODES_UI})
@EnableFlags(Flags.FLAG_MODES_UI)
public void updateScheduleRule_updatesConditionAndTriggerDescription() {
mFragment.setBackend(mBackend);
mFragment.mId = "id";

View File

@@ -117,11 +117,7 @@ public class ZenModeSliceBuilderTest {
ZenModeSliceBuilder.handleUriChange(mContext, intent);
if (android.app.Flags.modesApi()) {
verify(mNm).setZenMode(eq(ZEN_MODE_IMPORTANT_INTERRUPTIONS), any(), any(), eq(true));
} else {
verify(mNm).setZenMode(eq(ZEN_MODE_IMPORTANT_INTERRUPTIONS), any(), any());
}
verify(mNm).setZenMode(eq(ZEN_MODE_IMPORTANT_INTERRUPTIONS), any(), any(), eq(true));
}
@Test
@@ -131,10 +127,6 @@ public class ZenModeSliceBuilderTest {
ZenModeSliceBuilder.handleUriChange(mContext, intent);
if (android.app.Flags.modesApi()) {
verify(mNm).setZenMode(eq(ZEN_MODE_OFF), any(), any(), eq(true));
} else {
verify(mNm).setZenMode(eq(ZEN_MODE_OFF), any(), any());
}
verify(mNm).setZenMode(eq(ZEN_MODE_OFF), any(), any(), eq(true));
}
}

View File

@@ -28,14 +28,12 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.app.AppOpsManager;
import android.app.Flags;
import android.app.NotificationManager;
import android.content.ComponentName;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.platform.test.annotations.EnableFlags;
import android.platform.test.annotations.RequiresFlagsDisabled;
import android.platform.test.flag.junit.CheckFlagsRule;
import android.platform.test.flag.junit.DeviceFlagsValueProvider;
@@ -50,7 +48,6 @@ import com.android.settingslib.RestrictedSwitchPreference;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -188,7 +185,6 @@ public class ApprovalPreferenceControllerTest {
}
@Test
@EnableFlags(Flags.FLAG_MODES_API)
public void disable() {
when(mNm.isNotificationPolicyAccessGrantedForPackage(anyString())).thenReturn(false);
mController.disable(mCn);