Remove dependency on AppNavigationStateService from DefaultUnifiedPushCurrentUserPushConfigProvider

This commit is contained in:
Benoit Marty 2025-10-23 15:23:11 +02:00
parent 705b1b08f2
commit afdfe28ef4
21 changed files with 124 additions and 160 deletions

View file

@ -13,7 +13,7 @@ import dev.zacsweers.metro.Inject
import io.element.android.libraries.core.log.logger.LoggerTag
import io.element.android.libraries.matrix.api.MatrixClient
import io.element.android.libraries.matrix.api.core.SessionId
import io.element.android.libraries.pushproviders.api.CurrentUserPushConfig
import io.element.android.libraries.pushproviders.api.Config
import io.element.android.libraries.pushproviders.api.Distributor
import io.element.android.libraries.pushproviders.api.PushProvider
import io.element.android.libraries.pushproviders.api.PusherSubscriber
@ -74,9 +74,9 @@ class FirebasePushProvider(
*/
override suspend fun onSessionDeleted(sessionId: SessionId) = Unit
override suspend fun getCurrentUserPushConfig(): CurrentUserPushConfig? {
override suspend fun getPushConfig(sessionId: SessionId): Config? {
return firebaseStore.getFcmToken()?.let { fcmToken ->
CurrentUserPushConfig(
Config(
url = firebaseGatewayProvider.getFirebaseGateway(),
pushKey = fcmToken
)

View file

@ -13,7 +13,7 @@ import io.element.android.libraries.matrix.test.AN_EXCEPTION
import io.element.android.libraries.matrix.test.A_SESSION_ID
import io.element.android.libraries.matrix.test.FakeMatrixClient
import io.element.android.libraries.push.test.FakePusherSubscriber
import io.element.android.libraries.pushproviders.api.CurrentUserPushConfig
import io.element.android.libraries.pushproviders.api.Config
import io.element.android.libraries.pushproviders.api.Distributor
import io.element.android.libraries.pushproviders.api.PusherSubscriber
import io.element.android.tests.testutils.lambda.lambdaRecorder
@ -152,7 +152,7 @@ class FirebasePushProviderTest {
token = null
)
)
val result = firebasePushProvider.getCurrentUserPushConfig()
val result = firebasePushProvider.getPushConfig(A_SESSION_ID)
assertThat(result).isNull()
}
@ -163,8 +163,8 @@ class FirebasePushProviderTest {
token = "aToken"
),
)
val result = firebasePushProvider.getCurrentUserPushConfig()
assertThat(result).isEqualTo(CurrentUserPushConfig(A_FIREBASE_GATEWAY, "aToken"))
val result = firebasePushProvider.getPushConfig(A_SESSION_ID)
assertThat(result).isEqualTo(Config(A_FIREBASE_GATEWAY, "aToken"))
}
@Test