aboutsummaryrefslogtreecommitdiffstats
path: root/web/src/js/__tests__/ducks/ui.js
diff options
context:
space:
mode:
Diffstat (limited to 'web/src/js/__tests__/ducks/ui.js')
-rw-r--r--web/src/js/__tests__/ducks/ui.js35
1 files changed, 35 insertions, 0 deletions
diff --git a/web/src/js/__tests__/ducks/ui.js b/web/src/js/__tests__/ducks/ui.js
new file mode 100644
index 00000000..81ae852c
--- /dev/null
+++ b/web/src/js/__tests__/ducks/ui.js
@@ -0,0 +1,35 @@
+jest.unmock("../../ducks/ui");
+jest.unmock("../../ducks/flows");
+
+import reducer, {setActiveMenu} from '../../ducks/ui';
+import {SELECT_FLOW} from '../../ducks/flows';
+
+describe("ui reducer", () => {
+ it("should return the initial state", () => {
+ expect(reducer(undefined, {})).toEqual({ activeMenu: 'Start'})
+ }),
+ it("should return the state for view", () => {
+ expect(reducer(undefined, setActiveMenu('View'))).toEqual({ activeMenu: 'View'})
+ }),
+ it("should change the state to Start when deselecting a flow and we a currently at the flow tab", () => {
+ expect(reducer({activeMenu: 'Flow'},
+ { type: SELECT_FLOW,
+ currentSelection: '1',
+ flowId : undefined
+ })).toEqual({ activeMenu: 'Start'})
+ }),
+ it("should change the state to Flow when we selected a flow and no flow was selected before", () => {
+ expect(reducer({activeMenu: 'Start'},
+ { type: SELECT_FLOW,
+ currentSelection: undefined,
+ flowId : '1'
+ })).toEqual({ activeMenu: 'Flow'})
+ }),
+ it("should not change the state to Flow when OPTIONS tab is selected and we selected a flow and a flow as selected before", () => {
+ expect(reducer({activeMenu: 'Options'},
+ { type: SELECT_FLOW,
+ currentSelection: '1',
+ flowId : '2'
+ })).toEqual({ activeMenu: 'Options'})
+ })
+});