Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f4d44c55 authored by Matías Hernández's avatar Matías Hernández
Browse files

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
parent 2e12b95c
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -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 -> {});
                }
            };
}
+7 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.when;

import android.app.Flags;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
@@ -32,12 +33,15 @@ import android.content.pm.ComponentInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.os.Bundle;
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.service.notification.ConditionProviderService;

import com.android.settingslib.notification.modes.TestModeBuilder;
import com.android.settingslib.notification.modes.ZenMode;

import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
@@ -50,7 +54,10 @@ import java.util.List;
import java.util.function.Function;

@RunWith(RobolectricTestRunner.class)
@EnableFlags(Flags.FLAG_MODES_UI)
public class ConfigurationActivityHelperTest {
    @Rule
    public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();

    private Context mContext;
    private ConfigurationActivityHelper mHelper;
+9 −0
Original line number Diff line number Diff line
@@ -18,13 +18,17 @@ package com.android.settings.notification.modes;

import static com.google.common.truth.Truth.assertThat;

import android.app.Flags;
import android.content.ContentResolver;
import android.content.Context;
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;
import android.provider.Settings;

import com.android.settings.R;

import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.MockitoAnnotations;
@@ -32,7 +36,12 @@ import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;

@RunWith(RobolectricTestRunner.class)
@EnableFlags(Flags.FLAG_MODES_UI)
public class ManualDurationHelperTest {

    @Rule
    public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();

    private Context mContext;
    private ContentResolver mContentResolver;

+8 −0
Original line number Diff line number Diff line
@@ -24,10 +24,13 @@ import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import android.app.Flags;
import android.app.NotificationChannel;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.ParceledListSlice;
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;

import androidx.fragment.app.Fragment;
import androidx.preference.Preference;
@@ -37,6 +40,7 @@ import com.android.settings.notification.NotificationBackend;
import com.android.settingslib.applications.ApplicationsState;

import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
@@ -50,8 +54,12 @@ import java.util.Arrays;
import java.util.List;

@RunWith(RobolectricTestRunner.class)
@EnableFlags(Flags.FLAG_MODES_UI)
public class ZenModeAddBypassingAppsPreferenceControllerTest {

    @Rule
    public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();

    @Mock
    private NotificationBackend mBackend;
    @Mock
+9 −0
Original line number Diff line number Diff line
@@ -27,10 +27,13 @@ import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import android.app.Flags;
import android.app.NotificationChannel;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.ParceledListSlice;
import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.SetFlagsRule;

import androidx.fragment.app.Fragment;
import androidx.preference.Preference;
@@ -40,6 +43,7 @@ import com.android.settings.notification.NotificationBackend;
import com.android.settingslib.applications.ApplicationsState;

import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
@@ -52,7 +56,12 @@ import java.util.ArrayList;
import java.util.List;

@RunWith(RobolectricTestRunner.class)
@EnableFlags(Flags.FLAG_MODES_UI)
public class ZenModeAllBypassingAppsPreferenceControllerTest {

    @Rule
    public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();

    private ZenModeAllBypassingAppsPreferenceController mController;

    private Context mContext;
Loading