Marko Novakovic
11/22/2021, 12:16 PMSavedStateHandle and I want to introduce Flow like this:
class MyViewModel<State>(
private val savedStateHandle: SavedStateHandle,
initialState: State,
) : ViewModel() {
private var _state by mutableStateOf(initialState)
val state: State
get() = _state
init {
viewModelScope.launch {
savedStateHandle.getFlow(STATE, initialState)
.collect { _state = it }
}
}
fun updateState(reducer: State.() -> State) =
savedStateHandle.set(STATE, state.reducer())
companion object {
private const val STATE = "state"
}
}
it crashes my tests but when I do regular get, set on savedStateHandle tests work fine.
both work great when I run in on emulator or real device but every single test crashes.
any help?Marko Novakovic
11/22/2021, 12:16 PMsavedStateHandle.getFlow is just extension function -> savedStateHandle.getLiveData().asFlowvallebear
11/22/2021, 12:20 PMMarko Novakovic
11/22/2021, 12:32 PM