在ViewModel中,我正在从我的存储库类中调用一个方法,该方法从Web服务返回LiveData。我的viewModel代码:
class MainViewModel @Inject constructor(val mainRepository: MainRepository) : ViewModel() {
val source: LiveData<My_Result> = mainRepository.fetchApiresultFromClient(str_query)
.......... }
我的问题是,有一种方法可以从存储库中调用的Web服务获取真实数据,还是我只是准备结果并断言其不为null;如下所示:
when(mainrepository.fetchApiresultFromClient(any(String::class))).thenReturn(myPreparedLiveData<My_result>)
答案 0 :(得分:1)
由于该问题被标记为单元测试,恕我直言,期望来自Web服务的真实数据实际上并不属于单元测试的范围。您可能会调用而不是集成测试,但是,从单元测试的角度来看,您可能会考虑模拟调用Web服务的函数的响应,并验证是否使用您期望的适当参数调用了该方法。