В моем приложении я тестирую навигационные компоненты, используя контроллер навигации, используя Kotlin lang, инфраструктуру Espresso и Mockito.Приложение имеет несколько фрагментов.Несколько тестов работают нормально.Но не умеет работать со следующим scenerio
Существует фрагмент, предполагаемое имя фрагмента2, фрагмент2 переходит к фрагменту3 и фрагменту4 в зависимости от условия, которое вводит пользователь, предоставивший во фрагменте2
Просто хочу понять, как это будет работать.Ниже приведен мой код для другого теста, который работает нормально для фрагмента 4 во фрагмент 2 (где фрагмент 4 всегда перенаправляет фрагмент 2, то есть одиночную навигацию)
@Test
fun testNavigationFromGameOverToGameFragment() {
// Create a mock NavController
val mockNavController = mock(NavController::class.java)
// Create a graphical FragmentScenario for the TitleScreen
val gameOver = launchFragmentInContainer<GameOverFragment>(themeResId
= R.style.AppTheme)
// Set the NavController property on the fragment
gameOver.onFragment { fragment ->
Navigation.setViewNavController(fragment.requireView(),
mockNavController)
}
// Verify that performing a click prompts the correct Navigation
action
onView (ViewMatchers.withId (R.id.tryAgainButton)).perform (ViewActions.click ())
verify (mockNavController) .navigate (R.id.action_gameOverFragment_to_gameFragment)}
Мне нужен подход для того же