@ -24,49 +24,49 @@ import kotlin.test.assertFailsWith
class NiaNavigatorStateTest {
private lateinit var n iaNavigatorState: NiaNavigator State
private lateinit var n avigationState: Navigation State
private lateinit var niaNavigator : NiaNavigator
@Before
fun setup ( ) {
n iaNavigatorState = NiaNavigator State( TestStartKey )
niaNavigator = NiaNavigator ( n iaNavigator State)
n avigationState = Navigation State( TestStartKey )
niaNavigator = NiaNavigator ( n avigation State)
}
@Test
fun testStartKey ( ) {
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestStartKey )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
}
@Test
fun testNavigate ( ) {
niaNavigator . navigate ( TestKeyFirst )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
}
@Test
fun testNavigateTopLevel ( ) {
niaNavigator . navigate ( TestTopLevelKey )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestTopLevelKey )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestTopLevelKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestTopLevelKey )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestTopLevelKey )
}
@Test
fun testNavigateSingleTop ( ) {
niaNavigator . navigate ( TestKeyFirst )
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
TestKeyFirst ,
) . inOrder ( )
niaNavigator . navigate ( TestKeyFirst )
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
TestKeyFirst ,
) . inOrder ( )
@ -77,7 +77,7 @@ class NiaNavigatorStateTest {
niaNavigator . navigate ( TestTopLevelKey )
niaNavigator . navigate ( TestKeyFirst )
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
TestTopLevelKey ,
TestKeyFirst ,
@ -85,7 +85,7 @@ class NiaNavigatorStateTest {
niaNavigator . navigate ( TestTopLevelKey )
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
TestTopLevelKey ,
) . inOrder ( )
@ -95,13 +95,13 @@ class NiaNavigatorStateTest {
fun testSubStack ( ) {
niaNavigator . navigate ( TestKeyFirst )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
niaNavigator . navigate ( TestKeySecond )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestKeySecond )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestKeySecond )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
}
@Test
@ -109,33 +109,33 @@ class NiaNavigatorStateTest {
// add to start stack
niaNavigator . navigate ( TestKeyFirst )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
// navigate to new top level
niaNavigator . navigate ( TestTopLevelKey )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestTopLevelKey )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestTopLevelKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestTopLevelKey )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestTopLevelKey )
// add to new stack
niaNavigator . navigate ( TestKeySecond )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestKeySecond )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestTopLevelKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestKeySecond )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestTopLevelKey )
// go back to start stack
niaNavigator . navigate ( TestStartKey )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
}
@Test
fun testRestore ( ) {
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly ( TestStartKey )
assertThat ( n avigation State. currentBackStack ) . containsExactly ( TestStartKey )
n iaNavigator State. restore (
n avigation State. restore (
listOf ( TestStartKey , TestTopLevelKey ) ,
linkedMapOf (
TestStartKey to mutableStateListOf ( TestStartKey , TestKeyFirst ) ,
@ -143,15 +143,15 @@ class NiaNavigatorStateTest {
) ,
)
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
TestKeyFirst ,
TestTopLevelKey ,
TestKeySecond ,
) . inOrder ( )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestKeySecond )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestTopLevelKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestKeySecond )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestTopLevelKey )
}
@Test
@ -159,7 +159,7 @@ class NiaNavigatorStateTest {
niaNavigator . navigate ( TestKeyFirst )
niaNavigator . navigate ( TestKeySecond )
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
TestKeyFirst ,
TestKeySecond ,
@ -167,13 +167,13 @@ class NiaNavigatorStateTest {
niaNavigator . pop ( )
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
TestKeyFirst ,
) . inOrder ( )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
}
@Test
@ -181,25 +181,25 @@ class NiaNavigatorStateTest {
niaNavigator . navigate ( TestKeyFirst )
niaNavigator . navigate ( TestTopLevelKey )
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
TestKeyFirst ,
TestTopLevelKey ,
) . inOrder ( )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestTopLevelKey )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestTopLevelKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestTopLevelKey )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestTopLevelKey )
// remove TopLevel
niaNavigator . pop ( )
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
TestKeyFirst ,
) . inOrder ( )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestKeyFirst )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
}
@Test
@ -207,7 +207,7 @@ class NiaNavigatorStateTest {
niaNavigator . navigate ( TestKeyFirst )
niaNavigator . navigate ( TestKeySecond )
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
TestKeyFirst ,
TestKeySecond ,
@ -216,12 +216,12 @@ class NiaNavigatorStateTest {
niaNavigator . pop ( )
niaNavigator . pop ( )
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
) . inOrder ( )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestStartKey )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
}
@Test
@ -238,7 +238,7 @@ class NiaNavigatorStateTest {
niaNavigator . navigate ( testTopLevelKeyTwo )
niaNavigator . navigate ( TestKeySecond )
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
TestTopLevelKey ,
TestKeyFirst ,
@ -250,12 +250,12 @@ class NiaNavigatorStateTest {
niaNavigator . pop ( )
}
assertThat ( n iaNavigator State. currentBackStack ) . containsExactly (
assertThat ( n avigation State. currentBackStack ) . containsExactly (
TestStartKey ,
) . inOrder ( )
assertThat ( n iaNavigator State. currentKey ) . isEqualTo ( TestStartKey )
assertThat ( n iaNavigator State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentKey ) . isEqualTo ( TestStartKey )
assertThat ( n avigation State. currentTopLevelKey ) . isEqualTo ( TestStartKey )
}
@Test