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

Commit 3728a514 authored by András Kurucz's avatar András Kurucz
Browse files

[flexiglass] Parameterize VisualStabilityCoordinatorTest

Unfortunately some tests are broken, because
VisualStabilityCoordinator#mReorderingAllowed receives different values
when SceneContainer is enabled.

Fixes: 376236758
Test: atest VisualStabilityCoordinatorTest
Flag: com.android.systemui.scene_container
Change-Id: I900cf39efd74d8b174bc2476352283209faafcd3
parent 16f8bd72
Loading
Loading
Loading
Loading
+23 −2
Original line number Diff line number Diff line
@@ -16,6 +16,8 @@

package com.android.systemui.statusbar.notification.collection.coordinator;

import static com.android.systemui.flags.SceneContainerFlagParameterizationKt.parameterizeSceneContainerFlag;

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

import static junit.framework.Assert.assertFalse;
@@ -32,9 +34,9 @@ import static org.mockito.Mockito.when;
import static kotlinx.coroutines.flow.StateFlowKt.MutableStateFlow;

import android.platform.test.annotations.EnableFlags;
import android.platform.test.flag.junit.FlagsParameterization;
import android.testing.TestableLooper;

import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.SmallTest;

import com.android.compose.animation.scene.ObservableTransitionState;
@@ -42,6 +44,7 @@ import com.android.systemui.Flags;
import com.android.systemui.SysuiTestCase;
import com.android.systemui.communal.shared.model.CommunalScenes;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.flags.BrokenWithSceneContainer;
import com.android.systemui.keyguard.WakefulnessLifecycle;
import com.android.systemui.keyguard.shared.model.KeyguardState;
import com.android.systemui.keyguard.shared.model.TransitionState;
@@ -78,14 +81,23 @@ import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.mockito.verification.VerificationMode;

import java.util.List;

import kotlinx.coroutines.flow.MutableStateFlow;
import kotlinx.coroutines.test.TestScope;
import platform.test.runner.parameterized.ParameterizedAndroidJunit4;
import platform.test.runner.parameterized.Parameters;

@SmallTest
@RunWith(AndroidJUnit4.class)
@RunWith(ParameterizedAndroidJunit4.class)
@TestableLooper.RunWithLooper
public class VisualStabilityCoordinatorTest extends SysuiTestCase {

    @Parameters(name = "{0}")
    public static List<FlagsParameterization> getParams() {
        return parameterizeSceneContainerFlag();
    }

    private VisualStabilityCoordinator mCoordinator;

    @Mock private DumpManager mDumpManager;
@@ -117,6 +129,11 @@ public class VisualStabilityCoordinatorTest extends SysuiTestCase {
    private NotificationEntry mEntry;
    private GroupEntry mGroupEntry;

    public VisualStabilityCoordinatorTest(FlagsParameterization flags) {
        super();
        mSetFlagsRule.setFlagsParameterization(flags);
    }

    @Before
    public void setUp() {
        MockitoAnnotations.initMocks(this);
@@ -251,6 +268,7 @@ public class VisualStabilityCoordinatorTest extends SysuiTestCase {
    }

    @Test
    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
    public void testLockscreenPartlyShowing_groupAndSectionChangesNotAllowed() {
        // GIVEN the panel true expanded and device isn't pulsing
        setFullyDozed(false);
@@ -267,6 +285,7 @@ public class VisualStabilityCoordinatorTest extends SysuiTestCase {
    }

    @Test
    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
    public void testLockscreenFullyShowing_groupAndSectionChangesNotAllowed() {
        // GIVEN the panel true expanded and device isn't pulsing
        setFullyDozed(false);
@@ -520,6 +539,7 @@ public class VisualStabilityCoordinatorTest extends SysuiTestCase {

    @Test
    @EnableFlags(Flags.FLAG_CHECK_LOCKSCREEN_GONE_TRANSITION)
    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
    public void testNotLockscreenInGoneTransition_invalidationCalled() {
        // GIVEN visual stability is being maintained b/c animation is playing
        mKosmos.getKeyguardTransitionRepository().sendTransitionStepJava(
@@ -589,6 +609,7 @@ public class VisualStabilityCoordinatorTest extends SysuiTestCase {
    }

    @Test
    @BrokenWithSceneContainer(bugId = 377868472) // mReorderingAllowed is broken with SceneContainer
    public void testCommunalShowingWillNotSuppressReordering() {
        // GIVEN panel is expanded, communal is showing, and QS is collapsed
        setPulsing(false);