Я тестировал свой класс докладчика и все тестовые работы. Но когда я попытался запустить свой тестовый класс, все сопрограммы не прошли тест.
Я пытаюсь сбросить свою отправку и очистить прицел.
приватный диспетчер val = TestCoroutineDispatcher ()
private val testScope = TestCoroutineScope(dispatcher)
@Before
fun setUp() {
Dispatchers.setMain(dispatcher)
products = ProductsMotherObject.createEmptyModel()
getProductsUseCase = GetProductsUseCase(productsRepository)
updateProductsUseCase = UpdateProductsUseCase(productsRepository)
presenter = HomePresenter(view, getProductsUseCase, updateProductsUseCase, products)
}
@After
fun after() {
Dispatchers.resetMain()
testScope.cleanupTestCoroutines()
}
и это пример моих тестов
@Test
fun `should configure recyclerview if response is success`() = testScope.runBlockingTest {
//Given
`when`(productsRepository.getProductsFromApi()).thenReturn(mutableMapOf())
//when
presenter.fetchProducts()
//then
verify(view).hideLoading()
verify(view).setUpRecyclerView(products.values.toMutableList())
}
У меня только одиночные ошибки в моих тестах, но каждый тест работает при одиночном запуске