```class MainActivityViewModelKoinTest : KoinTest ...
# koin
a
Copy code
class MainActivityViewModelKoinTest : KoinTest {
    @get: Rule
    val rule = InstantTaskExecutorRule()

    @get:Rule
    val koinTestRule = KoinTestRule.create {
        printLogger(Level.DEBUG)
        modules(
            App.modules(context),
            DataSource.modules,
            Feature.modules,
            Repository.modules,
            Service.modules
        )
    }

    @get:Rule
    val mockProvider = MockProviderRule.create { clazz ->
        Mockito.mock(clazz.java)
    }

    private val context: Context by inject()
    private val navigator: Navigator by inject()
    private val viewModel: MainActivityViewModel by inject()

    @Test
    fun `Load conferences successfully`() {
        val success = Result.Success(20201)
        getCurrentConferenceId(success)

        viewModel.loadConferences(false)
        verify(navigator, never()).navigateToError(from = Screen.SCHEDULE)
    }
}