Change signature of selectPushProvider and add missing unit test.

This commit is contained in:
Benoit Marty 2024-11-15 15:13:24 +01:00
parent d97d561b13
commit 500659d4e1
6 changed files with 27 additions and 11 deletions

View file

@ -76,11 +76,11 @@ class DefaultPushService @Inject constructor(
}
override suspend fun selectPushProvider(
matrixClient: MatrixClient,
sessionId: SessionId,
pushProvider: PushProvider,
) {
Timber.d("Select ${pushProvider.name}")
val userPushStore = userPushStoreFactory.getOrCreate(matrixClient.sessionId)
val userPushStore = userPushStoreFactory.getOrCreate(sessionId)
userPushStore.setPushProviderName(pushProvider.name)
}

View file

@ -265,6 +265,22 @@ class DefaultPushServiceTest {
assertThat(pushClientSecretStore.getSecret(A_SESSION_ID)).isNull()
}
@Test
fun `selectPushProvider should store the data in the store`() = runTest {
val userPushStore = FakeUserPushStore()
val defaultPushService = createDefaultPushService(
userPushStoreFactory = FakeUserPushStoreFactory(
userPushStore = { userPushStore },
),
)
val aPushProvider = FakePushProvider(
name = "aCurrentPushProvider",
)
assertThat(userPushStore.getPushProviderName()).isNull()
defaultPushService.selectPushProvider(A_SESSION_ID, aPushProvider)
assertThat(userPushStore.getPushProviderName()).isEqualTo(aPushProvider.name)
}
private fun createDefaultPushService(
testPush: TestPush = FakeTestPush(),
userPushStoreFactory: UserPushStoreFactory = FakeUserPushStoreFactory(),