-
-
Save rozkminiacz/9fb62401dcb3252099e4ee1747e21698 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@Test | |
fun `ON start fetching data IT SHOULD show progress indicator`() { | |
val view: MainScreenContract.View = mockk(relaxed = true) | |
val fetchCurrencyUseCase: FetchCurrencyUseCase = mockk { | |
every { execute() } returns Single.never() | |
} | |
val presenter = MainScreenPresenter( | |
fetchCurrencyUseCase = fetchCurrencyUseCase, | |
schedulerProvider = TrampolineTestSchedulers() | |
) | |
presenter.attach(view) | |
verify { | |
view.toggleLoadingIndicator(true) | |
} | |
} | |
@Test | |
fun `ON fetching data complete IT SHOULD hide progress indicator`() { | |
val view: MainScreenContract.View = mockk(relaxed = true) | |
val fetchCurrencyUseCase: FetchCurrencyUseCase = mockk { | |
every { execute() } returns Single.just(fakeCurrencyList) | |
} | |
val presenter = MainScreenPresenter( | |
fetchCurrencyUseCase = fetchCurrencyUseCase, | |
schedulerProvider = TrampolineTestSchedulers() | |
) | |
presenter.attach(view) | |
verify { | |
view.toggleLoadingIndicator(false) | |
} | |
} | |
@Test | |
fun `ON fetching data error IT SHOULD hide progress indicator`() { | |
val view: MainScreenContract.View = mockk(relaxed = true) | |
val fetchCurrencyUseCase: FetchCurrencyUseCase = mockk { | |
every { execute() } returns Single.error(Throwable("error occurred")) | |
} | |
val presenter = MainScreenPresenter( | |
fetchCurrencyUseCase = fetchCurrencyUseCase, | |
schedulerProvider = TrampolineTestSchedulers() | |
) | |
presenter.attach(view) | |
verify { | |
view.toggleLoadingIndicator(false) | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment