vide
03/11/2024, 3:11 PMBaseApplication
and when I remove the last injection, I get this when compiling tests:
Cannot process test roots and app roots in the same compilation unit:
App root in this compilation unit: vide.BaseApplication
Test roots in this compilation unit: [vide.Test1, vide.Test2, ...]
vide
03/11/2024, 3:14 PM// main
@HiltAndroidApp
class MainApplication : BaseApplication()
open class BaseApplication : BlahBlahApplication()
open class BlahBlahApplication : Application()
and
// tests
open class TestApplicationBase : BaseApplication()
@CustomTestApplication(TestApplicationBase::class)
interface TestApplication
There's some base stuff in BlahBlahApplication
that is overriden differently depending on if we're running in tests or notvide
03/11/2024, 3:15 PM@HiltAndroidApp
class MainApplication : BaseApplication() {
@Inject lateinit var app: Application
}
vide
03/11/2024, 3:25 PMBaseApplication
the application root if not injecting anything to MainApplication
🤔vide
03/11/2024, 3:30 PMApplication
at the MainApplication
level and Hilt is happy again. I would definitely want to understand what is going here though.
// main
@HiltAndroidApp
class MainApplication : BaseApplication()
abstract class BaseApplication : Application(), BlahBlahApplication
interface BlahBlahApplication
// tests
open class TestApplicationBase : BaseApplication()
@CustomTestApplication(TestApplicationBase::class)
interface TestApplication