[flexiglass] Parameterize KeyguardUpdateMonitorTest to run with SceneContainerFlag
Also fix KeyguardUpdateMonitorTest so that tests pass when the
SceneContainerFlag is enabled
Fixes: 353955910
Test: atest KeyguardUpdateMonitorTest
Flag: com.android.systemui.scene_container
Change-Id: I1a2fc9c3cacfe0c337efdd3b9592a3f40a4933e8
diff --git a/packages/SystemUI/tests/src/com/android/keyguard/KeyguardUpdateMonitorTest.java b/packages/SystemUI/tests/src/com/android/keyguard/KeyguardUpdateMonitorTest.java
index c62b5e0..7aa415b 100644
--- a/packages/SystemUI/tests/src/com/android/keyguard/KeyguardUpdateMonitorTest.java
+++ b/packages/SystemUI/tests/src/com/android/keyguard/KeyguardUpdateMonitorTest.java
@@ -102,6 +102,7 @@
import android.os.RemoteException;
import android.os.UserHandle;
import android.os.UserManager;
+import android.platform.test.flag.junit.FlagsParameterization;
import android.service.dreams.IDreamManager;
import android.service.trust.TrustAgentService;
import android.telephony.ServiceState;
@@ -111,7 +112,6 @@
import android.testing.TestableLooper;
import android.text.TextUtils;
-import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.SmallTest;
import com.android.compose.animation.scene.ObservableTransitionState;
@@ -140,6 +140,7 @@
import com.android.systemui.deviceentry.shared.model.FaceDetectionStatus;
import com.android.systemui.deviceentry.shared.model.FailedFaceAuthenticationStatus;
import com.android.systemui.dump.DumpManager;
+import com.android.systemui.flags.SceneContainerFlagParameterizationKt;
import com.android.systemui.kosmos.KosmosJavaAdapter;
import com.android.systemui.log.SessionTracker;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
@@ -181,8 +182,11 @@
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger;
+import platform.test.runner.parameterized.ParameterizedAndroidJunit4;
+import platform.test.runner.parameterized.Parameters;
+
@SmallTest
-@RunWith(AndroidJUnit4.class)
+@RunWith(ParameterizedAndroidJunit4.class)
@TestableLooper.RunWithLooper
public class KeyguardUpdateMonitorTest extends SysuiTestCase {
private static final String PKG_ALLOWING_FP_LISTEN_ON_OCCLUDING_ACTIVITY =
@@ -313,6 +317,16 @@
mFingerprintAuthenticatorsRegisteredCallback;
private final InstanceId mKeyguardInstanceId = InstanceId.fakeInstanceId(999);
+ @Parameters(name = "{0}")
+ public static List<FlagsParameterization> getParams() {
+ return SceneContainerFlagParameterizationKt.parameterizeSceneContainerFlag();
+ }
+
+ public KeyguardUpdateMonitorTest(FlagsParameterization flags) {
+ super();
+ mSetFlagsRule.setFlagsParameterization(flags);
+ }
+
@Before
public void setup() throws RemoteException {
mKosmos = new KosmosJavaAdapter(this);
@@ -2473,11 +2487,11 @@
private void setPrimaryBouncerVisibility(boolean isVisible) {
if (SceneContainerFlag.isEnabled()) {
- when(mSceneInteractor.getCurrentScene()).thenReturn(
- isVisible
- ? MutableStateFlow(Scenes.Bouncer)
- : MutableStateFlow(Scenes.Lockscreen));
- onTransitionStateChanged(new ObservableTransitionState.Idle(Scenes.Bouncer));
+ ObservableTransitionState transitionState = new ObservableTransitionState.Idle(
+ isVisible ? Scenes.Bouncer : Scenes.Lockscreen);
+ when(mSceneInteractor.getTransitionState()).thenReturn(
+ MutableStateFlow(transitionState));
+ onTransitionStateChanged(transitionState);
} else {
sendPrimaryBouncerChanged(isVisible, isVisible);
mTestableLooper.processAllMessages();