Как имитировать SharedFlow для модульного теста ⇐ Android
-
Гость
Как имитировать SharedFlow для модульного теста
Предположим, что в одной функции в viewModel я получаю общий поток от XUseCase. Вы можете предположить следующее:
fun sampleFunction(){ xUseCase.getFlow() .собирать { // обновляем состояние } } Я пытаюсь написать модульный тест для этой функции и проверить, правильно ли обновилось состояние. Я использую библиотекуockK и высмеивал этот XUseCase.
Я пытаюсь имитировать ответ макета xUseCase.getFlow() следующим образом:
valsharedFlow = MutableSharedFlow() общийFlow.emit( (ИзбранноеОбновление( КодВендора = "x2ar", isFavorite = правда, ошибка = ноль )) ) каждый { xUseCase.getFlow() } возвращает SharedFlow.asSharedFlow() После отладки модульного теста я вижу, что xUseCase.getFlow() вернул пустой поток. Есть ли что-то, что мне не хватает?
Предположим, что в одной функции в viewModel я получаю общий поток от XUseCase. Вы можете предположить следующее:
fun sampleFunction(){ xUseCase.getFlow() .собирать { // обновляем состояние } } Я пытаюсь написать модульный тест для этой функции и проверить, правильно ли обновилось состояние. Я использую библиотекуockK и высмеивал этот XUseCase.
Я пытаюсь имитировать ответ макета xUseCase.getFlow() следующим образом:
valsharedFlow = MutableSharedFlow() общийFlow.emit( (ИзбранноеОбновление( КодВендора = "x2ar", isFavorite = правда, ошибка = ноль )) ) каждый { xUseCase.getFlow() } возвращает SharedFlow.asSharedFlow() После отладки модульного теста я вижу, что xUseCase.getFlow() вернул пустой поток. Есть ли что-то, что мне не хватает?
Мобильная версия