Merge "Add KeyguardTransitionInteractorFactory and update tests to use it." into udc-qpr-dev
This commit is contained in:
@@ -167,9 +167,10 @@ constructor(
|
||||
from = KeyguardState.PRIMARY_BOUNCER,
|
||||
to = KeyguardState.LOCKSCREEN,
|
||||
animator =
|
||||
getDefaultAnimatorForTransitionsToState(KeyguardState.LOCKSCREEN).apply {
|
||||
duration = 0
|
||||
}
|
||||
getDefaultAnimatorForTransitionsToState(
|
||||
KeyguardState.LOCKSCREEN
|
||||
)
|
||||
.apply { duration = 0 }
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
@@ -44,9 +44,9 @@ sealed class TransitionInteractor(
|
||||
abstract fun start()
|
||||
|
||||
fun startTransitionTo(
|
||||
toState: KeyguardState,
|
||||
animator: ValueAnimator? = getDefaultAnimatorForTransitionsToState(toState),
|
||||
resetIfCancelled: Boolean = false
|
||||
toState: KeyguardState,
|
||||
animator: ValueAnimator? = getDefaultAnimatorForTransitionsToState(toState),
|
||||
resetIfCancelled: Boolean = false
|
||||
): UUID? {
|
||||
if (
|
||||
fromState != transitionInteractor.startedKeyguardState.value &&
|
||||
|
||||
@@ -21,21 +21,22 @@ import android.view.View
|
||||
import android.widget.TextView
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.broadcast.BroadcastDispatcher
|
||||
import com.android.systemui.flags.FeatureFlags
|
||||
import com.android.systemui.bouncer.data.repository.FakeKeyguardBouncerRepository
|
||||
import com.android.systemui.broadcast.BroadcastDispatcher
|
||||
import com.android.systemui.common.ui.data.repository.FakeConfigurationRepository
|
||||
import com.android.systemui.flags.FeatureFlags
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository
|
||||
import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.log.LogBuffer
|
||||
import com.android.systemui.plugins.ClockAnimations
|
||||
import com.android.systemui.plugins.ClockController
|
||||
import com.android.systemui.plugins.ClockEvents
|
||||
import com.android.systemui.plugins.ClockFaceController
|
||||
import com.android.systemui.plugins.ClockFaceConfig
|
||||
import com.android.systemui.plugins.ClockFaceController
|
||||
import com.android.systemui.plugins.ClockFaceEvents
|
||||
import com.android.systemui.plugins.ClockTickRate
|
||||
import com.android.systemui.log.LogBuffer
|
||||
import com.android.systemui.statusbar.CommandQueue
|
||||
import com.android.systemui.statusbar.policy.BatteryController
|
||||
import com.android.systemui.statusbar.policy.ConfigurationController
|
||||
@@ -64,7 +65,6 @@ import org.mockito.Mockito.verify
|
||||
import org.mockito.junit.MockitoJUnit
|
||||
import java.util.TimeZone
|
||||
import java.util.concurrent.Executor
|
||||
import com.android.systemui.common.ui.data.repository.FakeConfigurationRepository
|
||||
import org.mockito.Mockito.`when` as whenever
|
||||
|
||||
@RunWith(AndroidTestingRunner::class)
|
||||
@@ -122,7 +122,9 @@ class ClockEventControllerTest : SysuiTestCase() {
|
||||
bouncerRepository = bouncerRepository,
|
||||
configurationRepository = FakeConfigurationRepository(),
|
||||
),
|
||||
KeyguardTransitionInteractor(transitionRepository, TestScope().backgroundScope),
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
).keyguardTransitionInteractor,
|
||||
broadcastDispatcher,
|
||||
batteryController,
|
||||
keyguardUpdateMonitor,
|
||||
|
||||
@@ -7,7 +7,7 @@ import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.coroutines.collectLastValue
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.shared.model.KeyguardState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionStep
|
||||
@@ -54,10 +54,11 @@ class LogContextInteractorImplTest : SysuiTestCase() {
|
||||
LogContextInteractorImpl(
|
||||
testScope.backgroundScope,
|
||||
foldProvider,
|
||||
KeyguardTransitionInteractor(
|
||||
keyguardTransitionRepository,
|
||||
testScope.backgroundScope
|
||||
),
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
repository = keyguardTransitionRepository,
|
||||
scope = testScope.backgroundScope,
|
||||
)
|
||||
.keyguardTransitionInteractor,
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractorFactory
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.shared.model.KeyguardState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionStep
|
||||
import com.android.systemui.keyguard.shared.model.WakeSleepReason
|
||||
@@ -67,10 +67,11 @@ class ResourceTrimmerTest : SysuiTestCase() {
|
||||
resourceTrimmer =
|
||||
ResourceTrimmer(
|
||||
keyguardInteractor,
|
||||
KeyguardTransitionInteractor(
|
||||
keyguardTransitionRepository,
|
||||
testScope.backgroundScope
|
||||
),
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = keyguardTransitionRepository,
|
||||
)
|
||||
.keyguardTransitionInteractor,
|
||||
globalWindowManager,
|
||||
testScope.backgroundScope,
|
||||
testDispatcher,
|
||||
|
||||
@@ -49,7 +49,7 @@ import com.android.systemui.flags.FakeFeatureFlags
|
||||
import com.android.systemui.flags.Flags.FACE_AUTH_REFACTOR
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractorFactory
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.shared.model.AuthenticationStatus
|
||||
import com.android.systemui.keyguard.shared.model.DetectionStatus
|
||||
import com.android.systemui.keyguard.shared.model.ErrorAuthenticationStatus
|
||||
@@ -216,7 +216,11 @@ class DeviceEntryFaceAuthRepositoryTest : SysuiTestCase() {
|
||||
)
|
||||
keyguardTransitionRepository = FakeKeyguardTransitionRepository()
|
||||
val keyguardTransitionInteractor =
|
||||
KeyguardTransitionInteractor(keyguardTransitionRepository, testScope.backgroundScope)
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = keyguardTransitionRepository,
|
||||
)
|
||||
.keyguardTransitionInteractor
|
||||
return DeviceEntryFaceAuthRepositoryImpl(
|
||||
mContext,
|
||||
fmOverride,
|
||||
|
||||
@@ -89,7 +89,11 @@ class KeyguardFaceAuthInteractorTest : SysuiTestCase() {
|
||||
faceAuthRepository = FakeDeviceEntryFaceAuthRepository()
|
||||
keyguardTransitionRepository = FakeKeyguardTransitionRepository()
|
||||
keyguardTransitionInteractor =
|
||||
KeyguardTransitionInteractor(keyguardTransitionRepository, testScope.backgroundScope)
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = keyguardTransitionRepository,
|
||||
)
|
||||
.keyguardTransitionInteractor
|
||||
|
||||
underTest =
|
||||
SystemUIKeyguardFaceAuthInteractor(
|
||||
|
||||
@@ -292,10 +292,11 @@ class KeyguardLongPressInteractorTest : SysuiTestCase() {
|
||||
appContext = mContext,
|
||||
scope = testScope.backgroundScope,
|
||||
transitionInteractor =
|
||||
KeyguardTransitionInteractor(
|
||||
keyguardTransitionRepository,
|
||||
testScope.backgroundScope
|
||||
),
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = testScope.backgroundScope,
|
||||
repository = keyguardTransitionRepository,
|
||||
)
|
||||
.keyguardTransitionInteractor,
|
||||
repository = keyguardRepository,
|
||||
logger = logger,
|
||||
featureFlags =
|
||||
|
||||
@@ -17,9 +17,9 @@
|
||||
|
||||
package com.android.systemui.keyguard.domain.interactor
|
||||
|
||||
import com.android.systemui.RoboPilotTest
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.RoboPilotTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.coroutines.collectValues
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
@@ -54,7 +54,10 @@ class KeyguardTransitionInteractorTest : SysuiTestCase() {
|
||||
@Before
|
||||
fun setUp() {
|
||||
repository = FakeKeyguardTransitionRepository()
|
||||
underTest = KeyguardTransitionInteractor(repository, testScope.backgroundScope)
|
||||
underTest = KeyguardTransitionInteractorFactory.create(
|
||||
scope = testScope.backgroundScope,
|
||||
repository = repository,
|
||||
).keyguardTransitionInteractor
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -19,6 +19,7 @@ package com.android.systemui.keyguard.domain.interactor
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.keyguard.KeyguardSecurityModel
|
||||
import com.android.keyguard.KeyguardSecurityModel.SecurityMode.PIN
|
||||
import com.android.keyguard.TestScopeProvider
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.bouncer.data.repository.FakeKeyguardBouncerRepository
|
||||
import com.android.systemui.flags.FakeFeatureFlags
|
||||
@@ -92,76 +93,97 @@ class KeyguardTransitionScenariosTest : SysuiTestCase() {
|
||||
@Before
|
||||
fun setUp() {
|
||||
MockitoAnnotations.initMocks(this)
|
||||
testScope = TestScope()
|
||||
testScope = TestScopeProvider.getTestScope()
|
||||
|
||||
keyguardRepository = FakeKeyguardRepository()
|
||||
bouncerRepository = FakeKeyguardBouncerRepository()
|
||||
shadeRepository = FakeShadeRepository()
|
||||
transitionRepository = spy(FakeKeyguardTransitionRepository())
|
||||
transitionInteractor = KeyguardTransitionInteractor(
|
||||
transitionRepository, testScope.backgroundScope)
|
||||
|
||||
whenever(keyguardSecurityModel.getSecurityMode(anyInt())).thenReturn(PIN)
|
||||
|
||||
featureFlags = FakeFeatureFlags().apply { set(Flags.FACE_AUTH_REFACTOR, true) }
|
||||
|
||||
fromLockscreenTransitionInteractor = FromLockscreenTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
shadeRepository = shadeRepository,
|
||||
).apply { start() }
|
||||
transitionInteractor =
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = testScope,
|
||||
repository = transitionRepository,
|
||||
)
|
||||
.keyguardTransitionInteractor
|
||||
|
||||
fromPrimaryBouncerTransitionInteractor = FromPrimaryBouncerTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
keyguardSecurityModel = keyguardSecurityModel,
|
||||
).apply { start() }
|
||||
fromLockscreenTransitionInteractor =
|
||||
FromLockscreenTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
shadeRepository = shadeRepository,
|
||||
)
|
||||
.apply { start() }
|
||||
|
||||
fromDreamingTransitionInteractor = FromDreamingTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
).apply { start() }
|
||||
fromPrimaryBouncerTransitionInteractor =
|
||||
FromPrimaryBouncerTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
keyguardSecurityModel = keyguardSecurityModel,
|
||||
)
|
||||
.apply { start() }
|
||||
|
||||
fromAodTransitionInteractor = FromAodTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
).apply { start() }
|
||||
fromDreamingTransitionInteractor =
|
||||
FromDreamingTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
)
|
||||
.apply { start() }
|
||||
|
||||
fromGoneTransitionInteractor = FromGoneTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
).apply { start() }
|
||||
fromAodTransitionInteractor =
|
||||
FromAodTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
)
|
||||
.apply { start() }
|
||||
|
||||
fromDozingTransitionInteractor = FromDozingTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
).apply { start() }
|
||||
fromGoneTransitionInteractor =
|
||||
FromGoneTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
)
|
||||
.apply { start() }
|
||||
|
||||
fromOccludedTransitionInteractor = FromOccludedTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
).apply { start() }
|
||||
fromDozingTransitionInteractor =
|
||||
FromDozingTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
)
|
||||
.apply { start() }
|
||||
|
||||
fromAlternateBouncerTransitionInteractor = FromAlternateBouncerTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
).apply { start() }
|
||||
fromOccludedTransitionInteractor =
|
||||
FromOccludedTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
)
|
||||
.apply { start() }
|
||||
|
||||
fromAlternateBouncerTransitionInteractor =
|
||||
FromAlternateBouncerTransitionInteractor(
|
||||
scope = testScope,
|
||||
keyguardInteractor = createKeyguardInteractor(),
|
||||
transitionRepository = transitionRepository,
|
||||
transitionInteractor = transitionInteractor,
|
||||
)
|
||||
.apply { start() }
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -46,7 +46,11 @@ class LightRevealScrimInteractorTest : SysuiTestCase() {
|
||||
private val fakeLightRevealScrimRepository = FakeLightRevealScrimRepository()
|
||||
|
||||
private val keyguardTransitionInteractor =
|
||||
KeyguardTransitionInteractor(fakeKeyguardTransitionRepository, TestScope().backgroundScope)
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = fakeKeyguardTransitionRepository,
|
||||
)
|
||||
.keyguardTransitionInteractor
|
||||
|
||||
private lateinit var underTest: LightRevealScrimInteractor
|
||||
|
||||
|
||||
@@ -22,6 +22,8 @@ import com.android.systemui.RoboPilotTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
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.DOZING
|
||||
import com.android.systemui.keyguard.shared.model.KeyguardState.DREAMING
|
||||
@@ -55,7 +57,12 @@ class DreamingToLockscreenTransitionViewModelTest : SysuiTestCase() {
|
||||
@Before
|
||||
fun setUp() {
|
||||
repository = FakeKeyguardTransitionRepository()
|
||||
val interactor = KeyguardTransitionInteractor(repository, TestScope().backgroundScope)
|
||||
val interactor =
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = repository,
|
||||
)
|
||||
.keyguardTransitionInteractor
|
||||
underTest = DreamingToLockscreenTransitionViewModel(interactor, mock())
|
||||
}
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.RoboPilotTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.shared.model.KeyguardState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionStep
|
||||
@@ -46,7 +46,12 @@ class GoneToDreamingTransitionViewModelTest : SysuiTestCase() {
|
||||
@Before
|
||||
fun setUp() {
|
||||
repository = FakeKeyguardTransitionRepository()
|
||||
val interactor = KeyguardTransitionInteractor(repository, TestScope().backgroundScope)
|
||||
val interactor =
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = repository,
|
||||
)
|
||||
.keyguardTransitionInteractor
|
||||
underTest = GoneToDreamingTransitionViewModel(interactor)
|
||||
}
|
||||
|
||||
|
||||
@@ -41,13 +41,12 @@ import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanc
|
||||
import com.android.systemui.keyguard.data.quickaffordance.KeyguardQuickAffordanceRemoteUserSelectionManager
|
||||
import com.android.systemui.keyguard.data.repository.FakeBiometricSettingsRepository
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardBottomAreaInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractorFactory
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardLongPressInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardQuickAffordanceInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.domain.quickaffordance.FakeKeyguardQuickAffordanceRegistry
|
||||
import com.android.systemui.keyguard.shared.quickaffordance.ActivationState
|
||||
import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancePosition
|
||||
@@ -210,10 +209,10 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() {
|
||||
appContext = mContext,
|
||||
scope = testScope.backgroundScope,
|
||||
transitionInteractor =
|
||||
KeyguardTransitionInteractor(
|
||||
repository = FakeKeyguardTransitionRepository(),
|
||||
scope = testScope.backgroundScope
|
||||
),
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
)
|
||||
.keyguardTransitionInteractor,
|
||||
repository = repository,
|
||||
logger = UiEventLoggerFake(),
|
||||
featureFlags = featureFlags,
|
||||
|
||||
@@ -21,7 +21,7 @@ import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.RoboPilotTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.shared.model.KeyguardState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionStep
|
||||
@@ -46,7 +46,12 @@ class LockscreenToDreamingTransitionViewModelTest : SysuiTestCase() {
|
||||
@Before
|
||||
fun setUp() {
|
||||
repository = FakeKeyguardTransitionRepository()
|
||||
val interactor = KeyguardTransitionInteractor(repository, TestScope().backgroundScope)
|
||||
val interactor =
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = repository,
|
||||
)
|
||||
.keyguardTransitionInteractor
|
||||
underTest = LockscreenToDreamingTransitionViewModel(interactor)
|
||||
}
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.RoboPilotTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.shared.model.KeyguardState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionStep
|
||||
@@ -46,7 +46,12 @@ class LockscreenToOccludedTransitionViewModelTest : SysuiTestCase() {
|
||||
@Before
|
||||
fun setUp() {
|
||||
repository = FakeKeyguardTransitionRepository()
|
||||
val interactor = KeyguardTransitionInteractor(repository, TestScope().backgroundScope)
|
||||
val interactor =
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = repository,
|
||||
)
|
||||
.keyguardTransitionInteractor
|
||||
underTest = LockscreenToOccludedTransitionViewModel(interactor)
|
||||
}
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.RoboPilotTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.shared.model.KeyguardState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionStep
|
||||
@@ -46,7 +46,12 @@ class OccludedToLockscreenTransitionViewModelTest : SysuiTestCase() {
|
||||
@Before
|
||||
fun setUp() {
|
||||
repository = FakeKeyguardTransitionRepository()
|
||||
val interactor = KeyguardTransitionInteractor(repository, TestScope().backgroundScope)
|
||||
val interactor =
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = repository,
|
||||
)
|
||||
.keyguardTransitionInteractor
|
||||
underTest = OccludedToLockscreenTransitionViewModel(interactor)
|
||||
}
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ import com.android.systemui.RoboPilotTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.bouncer.domain.interactor.PrimaryBouncerInteractor
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.shared.model.KeyguardState
|
||||
import com.android.systemui.keyguard.shared.model.ScrimAlpha
|
||||
import com.android.systemui.keyguard.shared.model.TransitionState
|
||||
@@ -55,7 +55,12 @@ class PrimaryBouncerToGoneTransitionViewModelTest : SysuiTestCase() {
|
||||
fun setUp() {
|
||||
MockitoAnnotations.initMocks(this)
|
||||
repository = FakeKeyguardTransitionRepository()
|
||||
val interactor = KeyguardTransitionInteractor(repository, TestScope().backgroundScope)
|
||||
val interactor =
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = repository,
|
||||
)
|
||||
.keyguardTransitionInteractor
|
||||
underTest =
|
||||
PrimaryBouncerToGoneTransitionViewModel(
|
||||
interactor,
|
||||
|
||||
@@ -25,7 +25,7 @@ import com.android.systemui.coroutines.collectLastValue
|
||||
import com.android.systemui.flags.FakeFeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.shared.model.KeyguardState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionStep
|
||||
@@ -97,10 +97,11 @@ class MultiShadeMotionEventInteractorTest : SysuiTestCase() {
|
||||
multiShadeInteractor = interactor,
|
||||
featureFlags = featureFlags,
|
||||
keyguardTransitionInteractor =
|
||||
KeyguardTransitionInteractor(
|
||||
repository = keyguardTransitionRepository,
|
||||
scope = testScope.backgroundScope
|
||||
),
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = keyguardTransitionRepository,
|
||||
)
|
||||
.keyguardTransitionInteractor,
|
||||
falsingManager = falsingManager,
|
||||
shadeController = shadeController,
|
||||
)
|
||||
|
||||
@@ -28,6 +28,11 @@ import com.android.keyguard.dagger.KeyguardBouncerComponent
|
||||
import com.android.systemui.R
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.back.domain.interactor.BackActionInteractor
|
||||
import com.android.systemui.bouncer.data.factory.BouncerMessageFactory
|
||||
import com.android.systemui.bouncer.data.repository.FakeBouncerMessageRepository
|
||||
import com.android.systemui.bouncer.domain.interactor.BouncerMessageInteractor
|
||||
import com.android.systemui.bouncer.domain.interactor.CountDownTimerUtil
|
||||
import com.android.systemui.bouncer.ui.viewmodel.KeyguardBouncerViewModel
|
||||
import com.android.systemui.classifier.FalsingCollectorFake
|
||||
import com.android.systemui.classifier.FalsingManagerFake
|
||||
import com.android.systemui.dock.DockManager
|
||||
@@ -35,14 +40,9 @@ import com.android.systemui.dump.logcatLogBuffer
|
||||
import com.android.systemui.flags.FakeFeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.keyguard.KeyguardUnlockAnimationController
|
||||
import com.android.systemui.bouncer.data.factory.BouncerMessageFactory
|
||||
import com.android.systemui.bouncer.domain.interactor.BouncerMessageInteractor
|
||||
import com.android.systemui.bouncer.domain.interactor.CountDownTimerUtil
|
||||
import com.android.systemui.bouncer.data.repository.FakeBouncerMessageRepository
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.shared.model.TransitionStep
|
||||
import com.android.systemui.bouncer.ui.viewmodel.KeyguardBouncerViewModel
|
||||
import com.android.systemui.keyguard.ui.viewmodel.PrimaryBouncerToGoneTransitionViewModel
|
||||
import com.android.systemui.log.BouncerLogger
|
||||
import com.android.systemui.multishade.data.remoteproxy.MultiShadeInputProxy
|
||||
@@ -80,9 +80,9 @@ import org.mockito.Mockito.anyFloat
|
||||
import org.mockito.Mockito.mock
|
||||
import org.mockito.Mockito.never
|
||||
import org.mockito.Mockito.verify
|
||||
import org.mockito.Mockito.`when` as whenever
|
||||
import org.mockito.MockitoAnnotations
|
||||
import java.util.Optional
|
||||
import org.mockito.Mockito.`when` as whenever
|
||||
|
||||
@OptIn(ExperimentalCoroutinesApi::class)
|
||||
@SmallTest
|
||||
@@ -198,10 +198,9 @@ class NotificationShadeWindowViewControllerTest : SysuiTestCase() {
|
||||
multiShadeInteractor = multiShadeInteractor,
|
||||
featureFlags = featureFlags,
|
||||
keyguardTransitionInteractor =
|
||||
KeyguardTransitionInteractor(
|
||||
repository = FakeKeyguardTransitionRepository(),
|
||||
scope = testScope.backgroundScope
|
||||
),
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
).keyguardTransitionInteractor,
|
||||
falsingManager = FalsingManagerFake(),
|
||||
shadeController = shadeController,
|
||||
)
|
||||
|
||||
@@ -40,8 +40,8 @@ import com.android.systemui.dump.logcatLogBuffer
|
||||
import com.android.systemui.flags.FakeFeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import com.android.systemui.keyguard.KeyguardUnlockAnimationController
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.ui.viewmodel.PrimaryBouncerToGoneTransitionViewModel
|
||||
import com.android.systemui.log.BouncerLogger
|
||||
import com.android.systemui.multishade.data.remoteproxy.MultiShadeInputProxy
|
||||
@@ -211,10 +211,10 @@ class NotificationShadeWindowViewTest : SysuiTestCase() {
|
||||
multiShadeInteractor = multiShadeInteractor,
|
||||
featureFlags = featureFlags,
|
||||
keyguardTransitionInteractor =
|
||||
KeyguardTransitionInteractor(
|
||||
repository = FakeKeyguardTransitionRepository(),
|
||||
scope = testScope.backgroundScope
|
||||
),
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
)
|
||||
.keyguardTransitionInteractor,
|
||||
falsingManager = FalsingManagerFake(),
|
||||
shadeController = shadeController,
|
||||
)
|
||||
|
||||
@@ -20,7 +20,7 @@ import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.coroutines.collectValues
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractor
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardTransitionInteractorFactory
|
||||
import com.android.systemui.keyguard.shared.model.KeyguardState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionState
|
||||
import com.android.systemui.keyguard.shared.model.TransitionStep
|
||||
@@ -48,7 +48,11 @@ class CollapsedStatusBarViewModelImplTest : SysuiTestCase() {
|
||||
|
||||
keyguardTransitionRepository = FakeKeyguardTransitionRepository()
|
||||
val interactor =
|
||||
KeyguardTransitionInteractor(keyguardTransitionRepository, testScope.backgroundScope)
|
||||
KeyguardTransitionInteractorFactory.create(
|
||||
scope = TestScope().backgroundScope,
|
||||
repository = keyguardTransitionRepository,
|
||||
)
|
||||
.keyguardTransitionInteractor
|
||||
underTest = CollapsedStatusBarViewModelImpl(interactor, testScope.backgroundScope)
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
* Copyright (C) 2023 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License
|
||||
*/
|
||||
|
||||
package com.android.systemui.keyguard.domain.interactor
|
||||
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardTransitionRepository
|
||||
import com.android.systemui.keyguard.data.repository.KeyguardTransitionRepository
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
|
||||
/**
|
||||
* Helper to create a new KeyguardTransitionInteractor in a way that doesn't require modifying 20+
|
||||
* tests whenever we add a constructor param.
|
||||
*/
|
||||
object KeyguardTransitionInteractorFactory {
|
||||
@JvmOverloads
|
||||
@JvmStatic
|
||||
fun create(
|
||||
scope: CoroutineScope,
|
||||
repository: KeyguardTransitionRepository = FakeKeyguardTransitionRepository(),
|
||||
): WithDependencies {
|
||||
return WithDependencies(
|
||||
repository = repository,
|
||||
KeyguardTransitionInteractor(
|
||||
scope = scope,
|
||||
repository = repository,
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
data class WithDependencies(
|
||||
val repository: KeyguardTransitionRepository,
|
||||
val keyguardTransitionInteractor: KeyguardTransitionInteractor,
|
||||
)
|
||||
}
|
||||
Reference in New Issue
Block a user