diff options
author | Maximilian Hils <git@maximilianhils.com> | 2016-07-19 03:13:39 -0700 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2016-07-19 03:13:39 -0700 |
commit | f356a84430f6606b2d7157eefd8e4a100fdd5dfb (patch) | |
tree | 038ccf7a15ce49d654e0b03ce73ba226d32c40f9 /web/src/js/__tests__/ducks/flowView.js | |
parent | 4ea6e61ea8ba57895451a9f76ec2c5e3c02829f3 (diff) | |
download | mitmproxy-f356a84430f6606b2d7157eefd8e4a100fdd5dfb.tar.gz mitmproxy-f356a84430f6606b2d7157eefd8e4a100fdd5dfb.tar.bz2 mitmproxy-f356a84430f6606b2d7157eefd8e4a100fdd5dfb.zip |
simplify web ui ducks
Diffstat (limited to 'web/src/js/__tests__/ducks/flowView.js')
-rw-r--r-- | web/src/js/__tests__/ducks/flowView.js | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/web/src/js/__tests__/ducks/flowView.js b/web/src/js/__tests__/ducks/flowView.js new file mode 100644 index 00000000..d5d9a6d9 --- /dev/null +++ b/web/src/js/__tests__/ducks/flowView.js @@ -0,0 +1,67 @@ +jest.unmock('../../ducks/flows') +jest.unmock('../../ducks/flowView') +jest.unmock('../../ducks/utils/view') +jest.unmock('../../ducks/utils/list') +jest.unmock('./tutils') + +import { createStore } from './tutils' + +import flows, * as flowActions from '../../ducks/flows' +import flowView, * as flowViewActions from '../../ducks/flowView' + + +function testStore() { + let store = createStore({ + flows, + flowView + }) + for (let i of [1, 2, 3, 4]) { + store.dispatch( + flowActions.addFlow({ id: i }) + ) + } + return store +} + +describe('select relative', () => { + + function testSelect(start, relative, result) { + const store = testStore() + store.dispatch(flowActions.select(start)) + expect(store.getState().flows.selected).toEqual(start ? [start] : []) + store.dispatch(flowViewActions.selectRelative(relative)) + expect(store.getState().flows.selected).toEqual([result]) + } + + describe('previous', () => { + + it('should select the previous flow', () => { + testSelect(3, -1, 2) + }) + + it('should not changed when first flow is selected', () => { + testSelect(1, -1, 1) + }) + + it('should select first flow if no flow is selected', () => { + testSelect(undefined, -1, 1) + }) + + }) + + describe('next', () => { + + it('should select the next flow', () => { + testSelect(2, 1, 3) + }) + + it('should not changed when last flow is selected', () => { + testSelect(4, 1, 4) + }) + + it('should select last flow if no flow is selected', () => { + testSelect(undefined, 1, 4) + }) + + }) +}) |