Skip to content

Commit fc6507a

Browse files
committed
Create const of any account provider value
1 parent 0fd77dc commit fc6507a

File tree

7 files changed

+23
-16
lines changed

7 files changed

+23
-16
lines changed

features/enterprise/api/src/main/kotlin/io/element/android/features/enterprise/api/EnterpriseService.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,14 @@ interface EnterpriseService {
2121

2222
fun firebasePushGateway(): String?
2323
fun unifiedPushDefaultPushGateway(): String?
24+
25+
companion object {
26+
const val ANY_ACCOUNT_PROVIDER = "*"
27+
}
2428
}
2529

2630
fun EnterpriseService.canConnectToAnyHomeserver(): Boolean {
2731
return defaultHomeserverList().let {
28-
it.isEmpty() || it.contains("*")
32+
it.isEmpty() || it.contains(EnterpriseService.ANY_ACCOUNT_PROVIDER)
2933
}
3034
}

features/login/impl/src/main/kotlin/io/element/android/features/login/impl/accountprovider/AccountProviderDataSource.kt

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,16 @@ import javax.inject.Inject
2020
class AccountProviderDataSource @Inject constructor(
2121
enterpriseService: EnterpriseService,
2222
) {
23-
private val defaultAccountProvider = (enterpriseService.defaultHomeserverList().firstOrNull { it != "*" } ?: AuthenticationConfig.MATRIX_ORG_URL)
24-
.let { url ->
25-
AccountProvider(
26-
url = url,
27-
subtitle = null,
28-
isPublic = url == AuthenticationConfig.MATRIX_ORG_URL,
29-
isMatrixOrg = url == AuthenticationConfig.MATRIX_ORG_URL,
30-
)
31-
}
23+
private val defaultAccountProvider =
24+
(enterpriseService.defaultHomeserverList().firstOrNull { it != EnterpriseService.ANY_ACCOUNT_PROVIDER } ?: AuthenticationConfig.MATRIX_ORG_URL)
25+
.let { url ->
26+
AccountProvider(
27+
url = url,
28+
subtitle = null,
29+
isPublic = url == AuthenticationConfig.MATRIX_ORG_URL,
30+
isMatrixOrg = url == AuthenticationConfig.MATRIX_ORG_URL,
31+
)
32+
}
3233

3334
private val accountProvider: MutableStateFlow<AccountProvider> = MutableStateFlow(
3435
defaultAccountProvider

features/login/impl/src/main/kotlin/io/element/android/features/login/impl/screens/changeaccountprovider/ChangeAccountProviderPresenter.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ class ChangeAccountProviderPresenter @Inject constructor(
2626
override fun present(): ChangeAccountProviderState {
2727
val staticAccountProviderList = remember {
2828
enterpriseService.defaultHomeserverList()
29-
.filter { it != "*" }
29+
.filter { it != EnterpriseService.ANY_ACCOUNT_PROVIDER }
3030
.map { it.ensureProtocol() }
3131
.ifEmpty { listOf(AuthenticationConfig.MATRIX_ORG_URL) }
3232
.map { url ->

features/login/impl/src/main/kotlin/io/element/android/features/login/impl/screens/chooseaccountprovider/ChooseAccountProviderPresenter.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ class ChooseAccountProviderPresenter @Inject constructor(
5656
}
5757

5858
val staticAccountProviderList = remember {
59-
// The list cannot contains "*" and cannot be empty at this point
59+
// The list cannot contains ANY_ACCOUNT_PROVIDER ("*") and cannot be empty at this point
6060
enterpriseService.defaultHomeserverList()
6161
.map { it.ensureProtocol() }
6262
.map { url ->

features/login/impl/src/test/kotlin/io/element/android/features/login/impl/accountprovider/AccountProviderDataSourceTest.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ package io.element.android.features.login.impl.accountprovider
1010
import app.cash.turbine.test
1111
import com.google.common.truth.Truth.assertThat
1212
import io.element.android.appconfig.AuthenticationConfig
13+
import io.element.android.features.enterprise.api.EnterpriseService
1314
import io.element.android.features.enterprise.test.FakeEnterpriseService
1415
import io.element.android.tests.testutils.WarmUpRule
1516
import kotlinx.coroutines.test.runTest
@@ -64,7 +65,7 @@ class AccountProviderDataSourceTest {
6465
fun `present - ensure that default homeserver is not start char`() = runTest {
6566
val sut = AccountProviderDataSource(
6667
FakeEnterpriseService(
67-
defaultHomeserverListResult = { listOf("*", AuthenticationConfig.MATRIX_ORG_URL) }
68+
defaultHomeserverListResult = { listOf(EnterpriseService.ANY_ACCOUNT_PROVIDER, AuthenticationConfig.MATRIX_ORG_URL) }
6869
)
6970
)
7071
sut.flow.test {

features/login/impl/src/test/kotlin/io/element/android/features/login/impl/screens/changeaccountprovider/ChangeAccountProviderPresenterTest.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import app.cash.molecule.RecompositionMode
1111
import app.cash.molecule.moleculeFlow
1212
import app.cash.turbine.test
1313
import com.google.common.truth.Truth.assertThat
14+
import io.element.android.features.enterprise.api.EnterpriseService
1415
import io.element.android.features.enterprise.test.FakeEnterpriseService
1516
import io.element.android.features.login.impl.accountprovider.AccountProvider
1617
import io.element.android.features.login.impl.changeserver.aChangeServerState
@@ -97,7 +98,7 @@ class ChangeAccountProviderPresenterTest {
9798
changeServerPresenter = { aChangeServerState() },
9899
enterpriseService = FakeEnterpriseService(
99100
defaultHomeserverListResult = {
100-
listOf(AN_ACCOUNT_PROVIDER, "*")
101+
listOf(AN_ACCOUNT_PROVIDER, EnterpriseService.ANY_ACCOUNT_PROVIDER)
101102
}
102103
),
103104
)

features/login/impl/src/test/kotlin/io/element/android/features/login/impl/screens/onboarding/OnBoardingPresenterTest.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ class OnBoardingPresenterTest {
7373
buildMeta = buildMeta,
7474
featureFlagService = featureFlagService,
7575
enterpriseService = FakeEnterpriseService(
76-
defaultHomeserverListResult = { listOf(ACCOUNT_PROVIDER_FROM_CONFIG, "*") },
76+
defaultHomeserverListResult = { listOf(ACCOUNT_PROVIDER_FROM_CONFIG, EnterpriseService.ANY_ACCOUNT_PROVIDER) },
7777
),
7878
rageshakeFeatureAvailability = { true },
7979
)
@@ -110,7 +110,7 @@ class OnBoardingPresenterTest {
110110
initialState = mapOf(FeatureFlags.QrCodeLogin.key to true),
111111
),
112112
enterpriseService = FakeEnterpriseService(
113-
defaultHomeserverListResult = { listOf(ACCOUNT_PROVIDER_FROM_CONFIG, "*") },
113+
defaultHomeserverListResult = { listOf(ACCOUNT_PROVIDER_FROM_CONFIG, EnterpriseService.ANY_ACCOUNT_PROVIDER) },
114114
isAllowedToConnectToHomeserverResult = { true },
115115
),
116116
)

0 commit comments

Comments
 (0)