Improve FakeAppNavigationStateService

This commit is contained in:
Benoit Marty 2026-02-12 10:53:51 +01:00 committed by Benoit Marty
parent b604b062b4
commit 73c3ffac2d
4 changed files with 29 additions and 27 deletions

View file

@ -15,15 +15,21 @@ import io.element.android.services.appnavstate.api.AppNavigationState
import io.element.android.services.appnavstate.api.AppNavigationStateService
import io.element.android.services.appnavstate.api.NavigationState
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.asStateFlow
class FakeAppNavigationStateService(
override val appNavigationState: MutableStateFlow<AppNavigationState> = MutableStateFlow(
AppNavigationState(
navigationState = NavigationState.Root,
isInForeground = true,
)
initialAppNavigationState: AppNavigationState = AppNavigationState(
navigationState = NavigationState.Root,
isInForeground = true,
),
) : AppNavigationStateService {
private val _appNavigationState: MutableStateFlow<AppNavigationState> = MutableStateFlow(initialAppNavigationState)
override val appNavigationState = _appNavigationState.asStateFlow()
fun emitNavigationState(state: AppNavigationState) {
_appNavigationState.value = state
}
override fun onNavigateToSession(owner: String, sessionId: SessionId) = Unit
override fun onLeavingSession(owner: String) = Unit