Как внедрить макет ViewModel в тест RoboElectric с помощью Koin

Я новичок в разработке для Android, и в настоящее время я тестирую базовую деятельность с Roboelectric и Koin.

Код:

class SplashActivity : AppCompatActivity() {
    private val viewModel: LoginViewModel by viewModel()

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_splash)

        Stetho.initializeWithDefaults(this)

        val user = viewModel.getPersistedUser()

        if (user != null) {
            viewModel.setUser(user)
            startActivity(HomeActivity.getStartIntent(this))
        } else {
            startActivity(LoginActivity.getStartIntent(this))
        }
    }
}

val appModule = module(override = true) {
    ...

    viewModel<LoginViewModel>()
}

Теперь все, что я хочу сделать в тесте, это внедрить издевательскую версию модели представления, чтобы имитировать ответ метода getPersistedUser.

Как я могу сделать это с Roboelectric и Koin?


person Miguel    schedule 01.05.2019    source источник
comment
Вы уже прошли через это, но, возможно, это поможет вам insert-koin .io/docs/2.0/documentation/reference/   -  person Shweta Chauhan    schedule 03.05.2019


Ответы (1)