diff options
2 files changed, 21 insertions, 2 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/KeyguardRepository.kt b/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/KeyguardRepository.kt index 4c4b588888d1..45b668e609ea 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/KeyguardRepository.kt +++ b/packages/SystemUI/src/com/android/systemui/keyguard/data/repository/KeyguardRepository.kt @@ -157,7 +157,11 @@ constructor( } } dozeHost.addCallback(callback) - trySendWithFailureLogging(false, TAG, "initial isDozing: false") + trySendWithFailureLogging( + statusBarStateController.isDozing, + TAG, + "initial isDozing", + ) awaitClose { dozeHost.removeCallback(callback) } } diff --git a/packages/SystemUI/tests/src/com/android/systemui/keyguard/data/repository/KeyguardRepositoryImplTest.kt b/packages/SystemUI/tests/src/com/android/systemui/keyguard/data/repository/KeyguardRepositoryImplTest.kt index eea2e952c81f..7a1568098e4a 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/keyguard/data/repository/KeyguardRepositoryImplTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/keyguard/data/repository/KeyguardRepositoryImplTest.kt @@ -23,6 +23,7 @@ import com.android.systemui.doze.DozeHost import com.android.systemui.plugins.statusbar.StatusBarStateController import com.android.systemui.statusbar.policy.KeyguardStateController import com.android.systemui.util.mockito.argumentCaptor +import com.android.systemui.util.mockito.whenever import com.google.common.truth.Truth.assertThat import kotlinx.coroutines.flow.launchIn import kotlinx.coroutines.flow.onEach @@ -33,7 +34,6 @@ import org.junit.runner.RunWith import org.junit.runners.JUnit4 import org.mockito.Mock import org.mockito.Mockito.verify -import org.mockito.Mockito.`when` as whenever import org.mockito.MockitoAnnotations @SmallTest @@ -153,6 +153,21 @@ class KeyguardRepositoryImplTest : SysuiTestCase() { } @Test + fun `isDozing - starts with correct initial value for isDozing`() = runBlockingTest { + var latest: Boolean? = null + + whenever(statusBarStateController.isDozing).thenReturn(true) + var job = underTest.isDozing.onEach { latest = it }.launchIn(this) + assertThat(latest).isTrue() + job.cancel() + + whenever(statusBarStateController.isDozing).thenReturn(false) + job = underTest.isDozing.onEach { latest = it }.launchIn(this) + assertThat(latest).isFalse() + job.cancel() + } + + @Test fun dozeAmount() = runBlockingTest { val values = mutableListOf<Float>() val job = underTest.dozeAmount.onEach(values::add).launchIn(this) |