Skip to content

Commit af4aa7a

Browse files
committed
#12 Improve test cases
1 parent f228bce commit af4aa7a

File tree

1 file changed

+13
-5
lines changed

1 file changed

+13
-5
lines changed

elmdroid/src/test/java/cz/inventi/elmdroid/ComponentRuntimeTest.kt

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,9 @@ import org.junit.ClassRule
1111
import org.junit.Rule
1212
import org.junit.Test
1313
import org.mockito.Mock
14-
import org.mockito.Mockito.`when`
15-
import org.mockito.Mockito.verify
14+
import org.mockito.Mockito
15+
import org.mockito.Mockito.*
1616
import org.mockito.MockitoAnnotations
17-
import org.mockito.Spy
1817

1918

2019
class ComponentRuntimeTest {
@@ -24,7 +23,7 @@ class ComponentRuntimeTest {
2423
@get:Rule
2524
val instantExecutorRule = InstantTaskExecutorRule()
2625

27-
@Spy lateinit var runtime: ComponentRuntime<TestState, TestMsg>
26+
lateinit var runtime: ComponentRuntime<TestState, TestMsg>
2827
@Mock lateinit var observer: Observer<TestState>
2928
@Mock lateinit var component: Component<TestState, TestMsg, TestCmd>
3029

@@ -41,7 +40,8 @@ class ComponentRuntimeTest {
4140
MockitoAnnotations.initMocks(this)
4241
`when`(component.initState()).thenReturn(TestState(3, "init"))
4342
lifecycleOwner = TestLifecycleOwner()
44-
runtime = RuntimeFactory.create(component)
43+
runtime = Mockito.spy(RuntimeFactory.create(component))
44+
runtime.bindTo(lifecycleOwner)
4545
}
4646

4747
@Test
@@ -56,6 +56,14 @@ class ComponentRuntimeTest {
5656
lifecycleOwner.markState(Lifecycle.State.DESTROYED)
5757
verify(runtime).clear()
5858
}
59+
60+
@Test
61+
fun autoClearNotCalled() {
62+
lifecycleOwner.markState(Lifecycle.State.INITIALIZED)
63+
lifecycleOwner.markState(Lifecycle.State.CREATED)
64+
lifecycleOwner.markState(Lifecycle.State.RESUMED)
65+
verify(runtime, never()).clear()
66+
}
5967
}
6068

6169
data class TestState(val number: Int, val text: String): State

0 commit comments

Comments
 (0)