Add test about selecting the first provider with a distributor.
This commit is contained in:
parent
618c351f9f
commit
6ea0fc8d17
1 changed files with 48 additions and 3 deletions
|
|
@ -217,7 +217,7 @@ class LoggedInPresenterTest {
|
||||||
sessionVerificationService.givenVerifiedStatus(SessionVerifiedStatus.Verified)
|
sessionVerificationService.givenVerifiedStatus(SessionVerifiedStatus.Verified)
|
||||||
val distributor = Distributor("aDistributorValue1", "aDistributorName1")
|
val distributor = Distributor("aDistributorValue1", "aDistributorName1")
|
||||||
val pushProvider = FakePushProvider(
|
val pushProvider = FakePushProvider(
|
||||||
index = 1,
|
index = 0,
|
||||||
name = "aFakePushProvider0",
|
name = "aFakePushProvider0",
|
||||||
distributors = listOf(
|
distributors = listOf(
|
||||||
Distributor("aDistributorValue0", "aDistributorName0"),
|
Distributor("aDistributorValue0", "aDistributorName0"),
|
||||||
|
|
@ -373,8 +373,8 @@ class LoggedInPresenterTest {
|
||||||
val sessionVerificationService = FakeSessionVerificationService()
|
val sessionVerificationService = FakeSessionVerificationService()
|
||||||
sessionVerificationService.givenVerifiedStatus(SessionVerifiedStatus.Verified)
|
sessionVerificationService.givenVerifiedStatus(SessionVerifiedStatus.Verified)
|
||||||
val pushProvider = FakePushProvider(
|
val pushProvider = FakePushProvider(
|
||||||
index = 1,
|
index = 0,
|
||||||
name = "aFakePushProvider1",
|
name = "aFakePushProvider",
|
||||||
distributors = emptyList(),
|
distributors = emptyList(),
|
||||||
)
|
)
|
||||||
val pushService = createFakePushService(
|
val pushService = createFakePushService(
|
||||||
|
|
@ -411,6 +411,51 @@ class LoggedInPresenterTest {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `present - case two push providers but first one does not have distributor - second one will be used`() = runTest {
|
||||||
|
val lambda = lambdaRecorder<MatrixClient, PushProvider, Distributor, Result<Unit>> { _, _, _ ->
|
||||||
|
Result.success(Unit)
|
||||||
|
}
|
||||||
|
val sessionVerificationService = FakeSessionVerificationService()
|
||||||
|
sessionVerificationService.givenVerifiedStatus(SessionVerifiedStatus.Verified)
|
||||||
|
val pushProvider0 = FakePushProvider(
|
||||||
|
index = 0,
|
||||||
|
name = "aFakePushProvider0",
|
||||||
|
distributors = emptyList(),
|
||||||
|
)
|
||||||
|
val distributor = Distributor("aDistributorValue1", "aDistributorName1")
|
||||||
|
val pushProvider1 = FakePushProvider(
|
||||||
|
index = 1,
|
||||||
|
name = "aFakePushProvider1",
|
||||||
|
distributors = listOf(distributor),
|
||||||
|
)
|
||||||
|
val pushService = createFakePushService(
|
||||||
|
pushProvider0 = pushProvider0,
|
||||||
|
pushProvider1 = pushProvider1,
|
||||||
|
registerWithLambda = lambda,
|
||||||
|
)
|
||||||
|
val presenter = createLoggedInPresenter(
|
||||||
|
pushService = pushService,
|
||||||
|
sessionVerificationService = sessionVerificationService,
|
||||||
|
)
|
||||||
|
moleculeFlow(RecompositionMode.Immediate) {
|
||||||
|
presenter.present()
|
||||||
|
}.test {
|
||||||
|
skipItems(2)
|
||||||
|
val finalState = awaitItem()
|
||||||
|
assertThat(finalState.pusherRegistrationState.isSuccess()).isTrue()
|
||||||
|
lambda.assertions().isCalledOnce()
|
||||||
|
.with(
|
||||||
|
// MatrixClient
|
||||||
|
any(),
|
||||||
|
// PushProvider with the distributor
|
||||||
|
value(pushProvider1),
|
||||||
|
// First distributor of second push provider
|
||||||
|
value(distributor),
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private fun createFakePushService(
|
private fun createFakePushService(
|
||||||
pushProvider0: PushProvider? = FakePushProvider(
|
pushProvider0: PushProvider? = FakePushProvider(
|
||||||
index = 0,
|
index = 0,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue