Код: Выделить всё
@HiltAndroidApp
class MyApplication : Application() {
override fun onCreate() {
super.onCreate()
//lots of stuff here
}
}
Теперь нам нужно внедрить класс в рабочий код, а также получить к нему доступ в тестовом классе.
поэтому мы добавили @HiltAndroidTest в тестовый класс и попытались внедрить необходимый класс.
выполняется. эта рукоять жаловалась, что для ее работы нам нужно предоставить специальное приложение.
поэтому ищу здесь и еще, где я понимаю, что мне нужно превратить MyApplication в базовое приложение:
Код: Выделить всё
abstract class MyApplication : Application(){/*same code as before*/}
Код: Выделить всё
@HiltAndroidApp
class AppApplication: MyApplication()
Код: Выделить всё
Код: Выделить всё
@RunWith(AndroidJUnit4::class)
@LargeTest
@HiltAndroidTest
class Buying {
@CustomTestApplication(MyApplication::class) interface TestApplication
}
Код: Выделить всё
java.lang.IllegalStateException: Hilt test, Buying, cannot use a @HiltAndroidApp application but found AppApplication. To fix, configure the test to use HiltTestApplication or a custom Hilt test application generated with @CustomTestApplication.
Подробнее здесь: https://stackoverflow.com/questions/797 ... t-cannot-u
Мобильная версия