Loading packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/KeyguardInteractorTest.kt +19 −0 Original line number Original line Diff line number Diff line Loading @@ -39,7 +39,9 @@ import com.android.systemui.keyguard.shared.model.DozeTransitionModel import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.KeyguardState.AOD import com.android.systemui.keyguard.shared.model.KeyguardState.AOD import com.android.systemui.keyguard.shared.model.KeyguardState.DOZING import com.android.systemui.keyguard.shared.model.KeyguardState.DOZING import com.android.systemui.keyguard.shared.model.KeyguardState.GONE import com.android.systemui.keyguard.shared.model.KeyguardState.LOCKSCREEN import com.android.systemui.keyguard.shared.model.KeyguardState.LOCKSCREEN import com.android.systemui.keyguard.shared.model.KeyguardState.OCCLUDED import com.android.systemui.keyguard.shared.model.StatusBarState import com.android.systemui.keyguard.shared.model.StatusBarState import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.TransitionState.FINISHED import com.android.systemui.keyguard.shared.model.TransitionState.FINISHED Loading Loading @@ -164,6 +166,23 @@ class KeyguardInteractorTest : SysuiTestCase() { assertThat(secureCameraActive()).isFalse() assertThat(secureCameraActive()).isFalse() } } @Test @DisableFlags(FLAG_KEYGUARD_WM_STATE_REFACTOR) fun testGoneStateResetsCameraActive() = testScope.runTest { val secureCameraActive = collectLastValue(underTest.isSecureCameraActive) runCurrent() underTest.onCameraLaunchDetected( StatusBarManager.CAMERA_LAUNCH_SOURCE_POWER_DOUBLE_TAP, isSecureCamera = true, ) assertThat(secureCameraActive()).isTrue() keyguardTransitionRepository.sendTransitionSteps(from = OCCLUDED, to = GONE, testScope) assertThat(secureCameraActive()).isFalse() } /** Regression test for b/373700726. */ /** Regression test for b/373700726. */ @Test @Test @DisableFlags(FLAG_KEYGUARD_WM_STATE_REFACTOR) @DisableFlags(FLAG_KEYGUARD_WM_STATE_REFACTOR) Loading packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardInteractor.kt +6 −0 Original line number Original line Diff line number Diff line Loading @@ -288,6 +288,7 @@ constructor( KeyguardBecameVisible, KeyguardBecameVisible, PrimaryBouncerBecameVisible, PrimaryBouncerBecameVisible, SecureCameraLaunched, SecureCameraLaunched, InGoneState, } } /** Whether camera is launched over keyguard. */ /** Whether camera is launched over keyguard. */ Loading @@ -302,6 +303,10 @@ constructor( primaryBouncerShowing primaryBouncerShowing .filter { it } .filter { it } .map { SecureCameraRelatedEventType.PrimaryBouncerBecameVisible }, .map { SecureCameraRelatedEventType.PrimaryBouncerBecameVisible }, keyguardTransitionInteractor .transitionValue(GONE) .filter { it == 1f } .map { SecureCameraRelatedEventType.InGoneState }, ) ) .map { .map { when (it) { when (it) { Loading @@ -310,6 +315,7 @@ constructor( // have to show, so those events tell us that secure camera is no longer active. // have to show, so those events tell us that secure camera is no longer active. SecureCameraRelatedEventType.KeyguardBecameVisible -> false SecureCameraRelatedEventType.KeyguardBecameVisible -> false SecureCameraRelatedEventType.PrimaryBouncerBecameVisible -> false SecureCameraRelatedEventType.PrimaryBouncerBecameVisible -> false SecureCameraRelatedEventType.InGoneState -> false } } } } .onStart { emit(false) } .onStart { emit(false) } Loading Loading
packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/KeyguardInteractorTest.kt +19 −0 Original line number Original line Diff line number Diff line Loading @@ -39,7 +39,9 @@ import com.android.systemui.keyguard.shared.model.DozeTransitionModel import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.KeyguardState.AOD import com.android.systemui.keyguard.shared.model.KeyguardState.AOD import com.android.systemui.keyguard.shared.model.KeyguardState.DOZING import com.android.systemui.keyguard.shared.model.KeyguardState.DOZING import com.android.systemui.keyguard.shared.model.KeyguardState.GONE import com.android.systemui.keyguard.shared.model.KeyguardState.LOCKSCREEN import com.android.systemui.keyguard.shared.model.KeyguardState.LOCKSCREEN import com.android.systemui.keyguard.shared.model.KeyguardState.OCCLUDED import com.android.systemui.keyguard.shared.model.StatusBarState import com.android.systemui.keyguard.shared.model.StatusBarState import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.TransitionState.FINISHED import com.android.systemui.keyguard.shared.model.TransitionState.FINISHED Loading Loading @@ -164,6 +166,23 @@ class KeyguardInteractorTest : SysuiTestCase() { assertThat(secureCameraActive()).isFalse() assertThat(secureCameraActive()).isFalse() } } @Test @DisableFlags(FLAG_KEYGUARD_WM_STATE_REFACTOR) fun testGoneStateResetsCameraActive() = testScope.runTest { val secureCameraActive = collectLastValue(underTest.isSecureCameraActive) runCurrent() underTest.onCameraLaunchDetected( StatusBarManager.CAMERA_LAUNCH_SOURCE_POWER_DOUBLE_TAP, isSecureCamera = true, ) assertThat(secureCameraActive()).isTrue() keyguardTransitionRepository.sendTransitionSteps(from = OCCLUDED, to = GONE, testScope) assertThat(secureCameraActive()).isFalse() } /** Regression test for b/373700726. */ /** Regression test for b/373700726. */ @Test @Test @DisableFlags(FLAG_KEYGUARD_WM_STATE_REFACTOR) @DisableFlags(FLAG_KEYGUARD_WM_STATE_REFACTOR) Loading
packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardInteractor.kt +6 −0 Original line number Original line Diff line number Diff line Loading @@ -288,6 +288,7 @@ constructor( KeyguardBecameVisible, KeyguardBecameVisible, PrimaryBouncerBecameVisible, PrimaryBouncerBecameVisible, SecureCameraLaunched, SecureCameraLaunched, InGoneState, } } /** Whether camera is launched over keyguard. */ /** Whether camera is launched over keyguard. */ Loading @@ -302,6 +303,10 @@ constructor( primaryBouncerShowing primaryBouncerShowing .filter { it } .filter { it } .map { SecureCameraRelatedEventType.PrimaryBouncerBecameVisible }, .map { SecureCameraRelatedEventType.PrimaryBouncerBecameVisible }, keyguardTransitionInteractor .transitionValue(GONE) .filter { it == 1f } .map { SecureCameraRelatedEventType.InGoneState }, ) ) .map { .map { when (it) { when (it) { Loading @@ -310,6 +315,7 @@ constructor( // have to show, so those events tell us that secure camera is no longer active. // have to show, so those events tell us that secure camera is no longer active. SecureCameraRelatedEventType.KeyguardBecameVisible -> false SecureCameraRelatedEventType.KeyguardBecameVisible -> false SecureCameraRelatedEventType.PrimaryBouncerBecameVisible -> false SecureCameraRelatedEventType.PrimaryBouncerBecameVisible -> false SecureCameraRelatedEventType.InGoneState -> false } } } } .onStart { emit(false) } .onStart { emit(false) } Loading