Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

127
Visualizações
burlándose de ``lateinit var``s

Correcto, entonces tengo una MainActivity que tiene una vista con ID fragment_container .

Ahora quiero escribir una prueba para verificar que se muestre esa vista.

 @RunWith(AndroidJUnit4::class) class Foo{ @get:Rule val mainActivity = ActivityTestRule(MainActivity::class.java) @Test fun startsWithFragmentContainerVisible(){ onView(withId(R.id.fragment_container)) .check(matches(isDisplayed())) } }

Ok... eso funciona SI el usuario ya ha iniciado sesión.

Porque si no lo está, la actividad se disparará

 private fun startLoginCycle(){ startActivity(Intent(this,LoginActivity::class.java)) }

Lo que significa que fragment_container está oculto detrás de LoginActivity .

Aquí está mi MainActivity.onCreate :

 private lateinit var um: IUserManager override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) um = UserManager(this) //user manager needs a context to get access to shared preferences /* [...] */ val au = um.activeUser if(!au.isLoggedIn) startLoginCycle() }

Dado que esta prueba no requiere ninguna de las funciones del UserManager , me gustaría simular el userManager y hacer que su activeUser simplemente devuelva la simulación de un User que simplemente está conectado.

¿Puedo hacer eso? ¿O necesito escribir un método que verifique si la actividad de inicio de sesión es visible y, de ser así, usar alguna cuenta de prueba para iniciar sesión en la aplicación?

over 4 years ago · Santiago Trujillo
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda