espresso ActivityTestRule para actividad con parámetro de tipo genérico
He declarado una actividad como esta
class QuestionnaireActivity<T : ProfileModel> : AppCompatActivity()
Quiero escribir una prueba de espresso, así que escribo ActivityTestRule como
@Rule @JvmField
val activityRule = object : ActivityTestRule<QuestionnaireActivity<ProfileModel.PersonalInfo>>(QuestionnaireActivity<ProfileModel.LifeStyleInfo>::class.java){
override fun getActivityIntent(): Intent = QuestionnaireActivity.getQuestionnaireIntent(InstrumentationRegistry.getTargetContext(), 3, ProfileModel.LifeStyleInfo())
}
pero el compilador se queja de que (se trata del argumento de ActivityTestRule)
only classes are allowed on the left hand side of a class literal
Se afirmaaqu que los genéricos no se pueden usar conclas.
Si elimino el parámetro de tipo genérico, el error se convierte en
Type inference failed.
Expected type mismatch: inferred type is Class<QuestionnaireActivity<*>> but Class<QuestionnaireActivity<ProfileModel.PersonalInfo>!>! was expected
¿Qué tengo que hacer
gracias por tu atenció