Enable Element Call integration in rooms by default (#1685)

Also change base url to `call.element.dev`.
This commit is contained in:
Jorge Martin Espinosa 2023-10-30 12:33:22 +01:00 committed by GitHub
parent 10ff9742e1
commit 69c0a3b6be
7 changed files with 10 additions and 10 deletions

View file

@ -17,5 +17,5 @@
package io.element.android.appconfig package io.element.android.appconfig
object ElementCallConfig { object ElementCallConfig {
const val DEFAULT_BASE_URL = "https://call.element.io" const val DEFAULT_BASE_URL = "https://call.element.dev"
} }

View file

@ -0,0 +1 @@
Enable Element Call integration in rooms by default.

View file

@ -82,7 +82,7 @@ class AdvancedSettingsPresenter @Inject constructor(
validator = ::customElementCallUrlValidator, validator = ::customElementCallUrlValidator,
) )
} else null, } else null,
eventSink = ::handleEvents eventSink = { handleEvents(it) }
) )
} }

View file

@ -44,6 +44,7 @@ class AdvancedSettingsPresenterTest {
val initialState = awaitItem() val initialState = awaitItem()
assertThat(initialState.isDeveloperModeEnabled).isFalse() assertThat(initialState.isDeveloperModeEnabled).isFalse()
assertThat(initialState.isRichTextEditorEnabled).isFalse() assertThat(initialState.isRichTextEditorEnabled).isFalse()
assertThat(initialState.customElementCallBaseUrlState).isNull()
} }
} }
@ -99,9 +100,7 @@ class AdvancedSettingsPresenterTest {
@Test @Test
fun `present - custom element call base url`() = runTest { fun `present - custom element call base url`() = runTest {
val store = InMemoryPreferencesStore() val store = InMemoryPreferencesStore()
val featureFlagService = FakeFeatureFlagService().apply { val featureFlagService = FakeFeatureFlagService(initialState = hashMapOf(FeatureFlags.InRoomCalls.key to true))
setFeatureEnabled(FeatureFlags.InRoomCalls, true)
}
val presenter = AdvancedSettingsPresenter(store, featureFlagService) val presenter = AdvancedSettingsPresenter(store, featureFlagService)
moleculeFlow(RecompositionMode.Immediate) { moleculeFlow(RecompositionMode.Immediate) {
presenter.present() presenter.present()
@ -113,9 +112,9 @@ class AdvancedSettingsPresenterTest {
assertThat(initialState.customElementCallBaseUrlState).isNotNull() assertThat(initialState.customElementCallBaseUrlState).isNotNull()
assertThat(initialState.customElementCallBaseUrlState?.baseUrl).isNull() assertThat(initialState.customElementCallBaseUrlState?.baseUrl).isNull()
initialState.eventSink(AdvancedSettingsEvents.SetCustomElementCallBaseUrl("https://call.element.dev")) initialState.eventSink(AdvancedSettingsEvents.SetCustomElementCallBaseUrl("https://call.element.ahoy"))
val updatedItem = awaitItem() val updatedItem = awaitItem()
assertThat(updatedItem.customElementCallBaseUrlState?.baseUrl).isEqualTo("https://call.element.dev") assertThat(updatedItem.customElementCallBaseUrlState?.baseUrl).isEqualTo("https://call.element.ahoy")
} }
} }

View file

@ -59,7 +59,7 @@ enum class FeatureFlags(
key = "feature.elementcall", key = "feature.elementcall",
title = "Element call in rooms", title = "Element call in rooms",
description = "Allow user to start or join a call in a room", description = "Allow user to start or join a call in a room",
defaultValue = false, defaultValue = true,
), ),
Mentions( Mentions(
key = "feature.mentions", key = "feature.mentions",

View file

@ -37,7 +37,7 @@ class StaticFeatureFlagProvider @Inject constructor() :
FeatureFlags.NotificationSettings -> true FeatureFlags.NotificationSettings -> true
FeatureFlags.VoiceMessages -> true FeatureFlags.VoiceMessages -> true
FeatureFlags.PinUnlock -> false FeatureFlags.PinUnlock -> false
FeatureFlags.InRoomCalls -> false FeatureFlags.InRoomCalls -> true
FeatureFlags.Mentions -> false FeatureFlags.Mentions -> false
} }
} else { } else {

View file

@ -31,6 +31,6 @@ class FakeFeatureFlagService(
} }
override suspend fun isFeatureEnabled(feature: Feature): Boolean { override suspend fun isFeatureEnabled(feature: Feature): Boolean {
return enabledFeatures[feature.key] ?: feature.defaultValue return enabledFeatures[feature.key] ?: false
} }
} }