Filter out disabled modes from the "can activate automatically" count

Bug: 355615361
Test: atest ZenModeSummaryHelperTest
Flag: android.app.modes_ui
Change-Id: Id54f08bfc253e69db0efb4e330813e89c28058d9
This commit is contained in:
Matías Hernández
2024-08-07 19:08:50 +02:00
parent 31d5fbff3c
commit d70fbf8e91
2 changed files with 7 additions and 3 deletions

View File

@@ -514,7 +514,7 @@ class ZenModeSummaryHelper {
return msgFormat.format(args); return msgFormat.format(args);
} else { } else {
int automaticModeCount = (int) modes.stream() int automaticModeCount = (int) modes.stream()
.filter(m -> !m.isManualDnd() && !m.isCustomManual()) .filter(m -> m.isEnabled() && !m.isManualDnd() && !m.isCustomManual())
.count(); .count();
MessageFormat msgFormat = new MessageFormat( MessageFormat msgFormat = new MessageFormat(

View File

@@ -61,7 +61,7 @@ import java.util.Random;
@RunWith(RobolectricTestRunner.class) @RunWith(RobolectricTestRunner.class)
@EnableFlags(Flags.FLAG_MODES_UI) @EnableFlags(Flags.FLAG_MODES_UI)
public class ZenModesSummaryHelperTest { public class ZenModeSummaryHelperTest {
private static final int WORK_PROFILE_ID = 3; private static final int WORK_PROFILE_ID = 3;
private Context mContext; private Context mContext;
@@ -489,7 +489,7 @@ public class ZenModesSummaryHelperTest {
} }
@Test @Test
public void getModesSummary_noRulesActive_countsOnlyAutomaticModes() { public void getModesSummary_noRulesActive_countsOnlyEnabledAutomaticModes() {
ImmutableList<ZenMode> modes = ImmutableList.of( ImmutableList<ZenMode> modes = ImmutableList.of(
TestModeBuilder.MANUAL_DND_INACTIVE, // Not automatic TestModeBuilder.MANUAL_DND_INACTIVE, // Not automatic
new TestModeBuilder().setName("Auto 1").build(), // App provided automatic new TestModeBuilder().setName("Auto 1").build(), // App provided automatic
@@ -499,6 +499,10 @@ public class ZenModesSummaryHelperTest {
.setType(AutomaticZenRule.TYPE_OTHER) .setType(AutomaticZenRule.TYPE_OTHER)
.setConditionId(ZenModeConfig.toCustomManualConditionId()) .setConditionId(ZenModeConfig.toCustomManualConditionId())
.build(), // Custom manual, not automatic .build(), // Custom manual, not automatic
new TestModeBuilder()
.setName("Disabled 1")
.setEnabled(false)
.build(), // Would be automatic, but it's disabled.
new TestModeBuilder() new TestModeBuilder()
.setName("Sleep") .setName("Sleep")
.setPackage(SystemZenRules.PACKAGE_ANDROID) .setPackage(SystemZenRules.PACKAGE_ANDROID)