From 075280076d373dad01666397f7b857aad8450b7c Mon Sep 17 00:00:00 2001 From: Robert Jaros Date: Fri, 21 Jun 2019 15:37:03 +0200 Subject: Simplification of the Redux module. --- .../test/pl/treksoft/kvision/redux/ReduxStoreSpec.kt | 19 +++++++++---------- .../pl/treksoft/kvision/redux/StateBindingSpec.kt | 2 -- 2 files changed, 9 insertions(+), 12 deletions(-) (limited to 'kvision-modules/kvision-redux/src/test/kotlin') diff --git a/kvision-modules/kvision-redux/src/test/kotlin/test/pl/treksoft/kvision/redux/ReduxStoreSpec.kt b/kvision-modules/kvision-redux/src/test/kotlin/test/pl/treksoft/kvision/redux/ReduxStoreSpec.kt index 3be83556..b45eb9dd 100644 --- a/kvision-modules/kvision-redux/src/test/kotlin/test/pl/treksoft/kvision/redux/ReduxStoreSpec.kt +++ b/kvision-modules/kvision-redux/src/test/kotlin/test/pl/treksoft/kvision/redux/ReduxStoreSpec.kt @@ -21,15 +21,13 @@ */ package test.pl.treksoft.kvision.redux -import kotlinx.serialization.Serializable import pl.treksoft.kvision.redux.createReduxStore import redux.RAction import test.pl.treksoft.kvision.SimpleSpec import kotlin.test.Test import kotlin.test.assertEquals -@Serializable -data class TestState(val counter: Int) +data class TestState(val counter: Int, val values: List) sealed class TestAction : RAction { object Inc : TestAction() @@ -38,10 +36,10 @@ sealed class TestAction : RAction { fun testReducer(state: TestState, action: TestAction): TestState = when (action) { is TestAction.Inc -> { - state.copy(counter = state.counter + 1) + state.copy(counter = state.counter + 1, values = state.values + state.counter) } is TestAction.Dec -> { - state.copy(counter = state.counter - 1) + state.copy(counter = state.counter - 1, values = state.values + state.counter) } } @@ -50,20 +48,21 @@ class ReduxStoreSpec : SimpleSpec { @Test fun getState() { run { - val store = createReduxStore(::testReducer, TestState(10)) - assertEquals(TestState(10), store.getState()) + val store = createReduxStore(::testReducer, TestState(10, listOf())) + assertEquals(TestState(10, listOf()), store.getState()) } } @Test fun dispatch() { run { - val store = createReduxStore(::testReducer, TestState(10)) + val store = createReduxStore(::testReducer, TestState(10, listOf())) store.dispatch(TestAction.Inc) store.dispatch(TestAction.Inc) store.dispatch(TestAction.Inc) store.dispatch(TestAction.Dec) - assertEquals(TestState(12), store.getState()) + store.dispatch(TestAction.Dec) + assertEquals(TestState(11, listOf(10, 11, 12, 13, 12)), store.getState()) } } @@ -71,7 +70,7 @@ class ReduxStoreSpec : SimpleSpec { fun subscribe() { run { var counter = 0 - val store = createReduxStore(::testReducer, TestState(10)) + val store = createReduxStore(::testReducer, TestState(10, listOf())) store.subscribe { counter++ } diff --git a/kvision-modules/kvision-redux/src/test/kotlin/test/pl/treksoft/kvision/redux/StateBindingSpec.kt b/kvision-modules/kvision-redux/src/test/kotlin/test/pl/treksoft/kvision/redux/StateBindingSpec.kt index 5204402d..ec32d0d6 100644 --- a/kvision-modules/kvision-redux/src/test/kotlin/test/pl/treksoft/kvision/redux/StateBindingSpec.kt +++ b/kvision-modules/kvision-redux/src/test/kotlin/test/pl/treksoft/kvision/redux/StateBindingSpec.kt @@ -21,7 +21,6 @@ */ package test.pl.treksoft.kvision.redux -import kotlinx.serialization.Serializable import pl.treksoft.kvision.html.Div.Companion.div import pl.treksoft.kvision.panel.Root import pl.treksoft.kvision.panel.SimplePanel @@ -33,7 +32,6 @@ import test.pl.treksoft.kvision.DomSpec import kotlin.browser.document import kotlin.test.Test -@Serializable data class State(val counter: Int) sealed class StateAction : RAction { -- cgit