espresso ActivityTestRule para atividade com parâmetro de tipo genérico
Eu declarei uma atividade como esta
class QuestionnaireActivity<T : ProfileModel> : AppCompatActivity()
Quero escrever um teste de café expresso, então estou escrevendo o 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())
}
mas o compilador reclama que (é sobre o argumento de ActivityTestRule)
only classes are allowed on the left hand side of a class literal
É afirmadoaqui que genéricos não podem ser usados comclasse.
Se eu remover o parâmetro de tipo genérico, o erro se tornará
Type inference failed.
Expected type mismatch: inferred type is Class<QuestionnaireActivity<*>> but Class<QuestionnaireActivity<ProfileModel.PersonalInfo>!>! was expected
O que devo fazer?
Agradecimentos para sua atenção