Lets say I have 2 fragments: FirstFragment
and SecondFragment
. I will navigate from FirstFragment
to SecondFragment
passing through a message
argument using safeargs. Where message
is just a string.
In my FirstFragment
I have a method:
fun navigateToSecond(msg: String){
var action = FirstFragmentDirections.actionToSecond(msg)
navController.navigate(action)
}
I can use this method like this:
navigateToSecond("my message")
Then in the SecondFragment
I will get the message:
override fun onStart() {
super.onStart()
arguments?.let {
var args = SecondFragmentArgs.fromBundle(it)
val message = args.message
// use message here
}
}
I would like to know is there a way to test this, in particular I would like to test that the appropriate message is sent to SecondFragment
when I call navigateToSecond
and that SecondFragment
correctly receives the message.
I would like to test this using mockito
or robolectric
.
I tried using mocking to check whether the appropriate methods are called on navController
but it was hard and didn't worked out.
So, is there a good or well known way to test the safeargs in android?
Thanks!
Aucun commentaire:
Enregistrer un commentaire