Fix Zen tests that were failing with modes_ui enabled

Actual fixes are in ZenModesListFragmentTest (was creating somewhat unrelated preferences with the actual ZenModesBackend, and isAvailable now returns true for them) and ZenModePreferenceControllerTest (no longer available with modes_ui). But also added EnableFlags(FLAG_MODES_UI) to all tests in notification/modes that lacked it, so we don't regress before we flip the flag.

Bug: 356334282
Test: atest com.android.settings.notification
Flag: android.app.modes_ui
Change-Id: I791b52cfb3fd9adea61079b4b41e456c8b3fe7bd
This commit is contained in:
Matías Hernández
2024-07-30 14:30:06 +02:00
parent 2e12b95c45
commit f4d44c5500
17 changed files with 120 additions and 16 deletions

View File

@@ -49,15 +49,11 @@ public class ZenModesListFragment extends ZenModesFragmentBase {
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
return buildPreferenceControllers(context, this::onAvailableModeTypesForAdd);
return buildPreferenceControllers(context, mBackend, this::onAvailableModeTypesForAdd);
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
OnAddModeListener onAddModeListener) {
// We need to redefine ZenModesBackend here even though mBackend exists so that this method
// can be static; it must be static to be able to be used in SEARCH_INDEX_DATA_PROVIDER.
ZenModesBackend backend = ZenModesBackend.getInstance(context);
ZenModesBackend backend, OnAddModeListener onAddModeListener) {
return ImmutableList.of(
new ZenModesListPreferenceController(context, backend),
new ZenModesListAddModePreferenceController(context, onAddModeListener)
@@ -150,7 +146,10 @@ public class ZenModesListFragment extends ZenModesFragmentBase {
@Override
public List<AbstractPreferenceController> createPreferenceControllers(
Context context) {
return buildPreferenceControllers(context, ignoredType -> {});
// We need to redefine ZenModesBackend here even though mBackend exists so that
// SEARCH_INDEX_DATA_PROVIDER can be static.
return buildPreferenceControllers(context, ZenModesBackend.getInstance(context),
ignoredType -> {});
}
};
}