I am writing test for below Compose navigation.
compose(Page) {
val manager = navController.appCompatActivity?.supportFragmentManager
if (manager != null) {
// Create instance of Fragmnet
} else {
// pop backstack
}
// Show compose screen
}
When I am navigating to destination using compose test getting null on supportFragmentManager
Test
@get:Rule
val rule = createComposeRule()
@Before
fun setupAppNavHost() {
rule.setContent {
navController = TestNavHostController(LocalContext.current)
navController.navigatorProvider.addNavigator(ComposeNavigator())
ComposeNavHost(navController = navController, DefaultDestination)
}
}
@Test
fun someTest() {
val viewModel = mock<ViewModel> {
on { shouldShowChallenge() } doReturn MutableLiveData(Resource.Success(true))
}
DaggerHelper.setViewModel(viewModel)
navController.navigate(REQUEST)
Assert.assertEquals(REQUEST, navController.currentBackStackEntry?.destination?.route)
rule.onNodeWithTag(DROPDOWN).assertExists()
}