org.koin.android.error.MissingAndroidContextException: при попытке протестировать приложение с контекстом - PullRequest
2 голосов
/ 27 мая 2019

Я хочу написать тест для koin.Я использую RoomDatabase, который получает контекст в конструкторе.Приложение работает хорошо, но тест не пройден

Не удается разрешить экземпляр приложения.Пожалуйста, используйте функцию androidContext () в вашей конфигурации KoinApplication.

Ответы [ 3 ]

3 голосов
/ 03 июня 2019

если вам нужен контекст в ваших модулях, вы должны передать контекст в вашем начальном методе koin

// start Koin!
    startKoin {

      // declare used Android context
      androidContext(this@MyApplication)

      // declare modules
      modules(yourModule)
    }

и использовать эти библиотеки

    // Koin AndroidX Scope features
    implementation "org.koin:koin-android-scope:2.0.1"
// Koin AndroidX ViewModel features
    implementation 'org.koin:koin-androidx-viewmodel:2.0.1'
// Koin AndroidX Experimental features
    implementation "org.koin:koin-android-ext:2.0.1"
1 голос
/ 31 мая 2019

Убедитесь, что вы установили свой контекст при запуске koin.Тогда вы сможете получить к нему доступ через androidContext () в своих модулях.

startKoin {
    androidContext(this@App)
    modules(...)
    ...
}
0 голосов
/ 15 июля 2019

Вы не можете проверить комнату в модульном тестировании с Коин. Вы можете тестировать только в инструментальных тестах.

...