aboutsummaryrefslogtreecommitdiff
path: root/test/content/reducers/addon.test.js
diff options
context:
space:
mode:
authorShin'ya Ueoka <ueokande@i-beam.org>2017-10-21 13:26:36 +0900
committerShin'ya Ueoka <ueokande@i-beam.org>2017-10-21 13:26:36 +0900
commit59f7ef205df4750063c755a7b8834bfd7509da83 (patch)
tree64b631c18a0a7aa2ff547b4c325ee3138ea825cc /test/content/reducers/addon.test.js
parentcd6f7e77887f535e88690b84ad081f7cc630306f (diff)
add addon actions
Diffstat (limited to 'test/content/reducers/addon.test.js')
-rw-r--r--test/content/reducers/addon.test.js38
1 files changed, 38 insertions, 0 deletions
diff --git a/test/content/reducers/addon.test.js b/test/content/reducers/addon.test.js
new file mode 100644
index 0000000..93f97e8
--- /dev/null
+++ b/test/content/reducers/addon.test.js
@@ -0,0 +1,38 @@
+import { expect } from "chai";
+import actions from 'content/actions';
+import addonReducer from 'content/reducers/addon';
+
+describe("addon reducer", () => {
+ it('return the initial state', () => {
+ let state = addonReducer(undefined, {});
+ expect(state).to.have.property('enabled', true);
+ });
+
+ it('return next state for ADDON_ENABLE', () => {
+ let action = { type: actions.ADDON_ENABLE};
+ let prev = { enabled: false };
+ let state = addonReducer(prev, action);
+
+ expect(state.enabled).is.equal(true);
+ });
+
+ it('return next state for ADDON_DISABLE', () => {
+ let action = { type: actions.ADDON_DISABLE};
+ let prev = { enabled: true };
+ let state = addonReducer(prev, action);
+
+ expect(state.enabled).is.equal(false);
+ });
+
+ it('return next state for ADDON_TOGGLE_ENABLED', () => {
+ let action = { type: actions.ADDON_TOGGLE_ENABLED };
+ let state = { enabled: false };
+
+ state = addonReducer(state, action);
+ expect(state.enabled).is.equal(true);
+
+ state = addonReducer(state, action);
+ expect(state.enabled).is.equal(false);
+ });
+
+});