aboutsummaryrefslogtreecommitdiffstats
path: root/web/src/js/__tests__/components/FlowView
diff options
context:
space:
mode:
authorMatthew Shao <me@matshao.com>2017-05-30 21:46:17 +0800
committerMatthew Shao <me@matshao.com>2017-05-30 21:46:17 +0800
commitf840d018e5a61c39fe465d28ff31d08b9a03a5a8 (patch)
tree9f7b84fe12c22248e501d1e398a4a1d58dd8ac7c /web/src/js/__tests__/components/FlowView
parent248dde26043560482a5b69b701df4d3814b9896b (diff)
downloadmitmproxy-f840d018e5a61c39fe465d28ff31d08b9a03a5a8.tar.gz
mitmproxy-f840d018e5a61c39fe465d28ff31d08b9a03a5a8.tar.bz2
mitmproxy-f840d018e5a61c39fe465d28ff31d08b9a03a5a8.zip
[web] Add tests for js/components/FlowView/Nav.jsx
Diffstat (limited to 'web/src/js/__tests__/components/FlowView')
-rw-r--r--web/src/js/__tests__/components/FlowView/NavSpec.js38
-rw-r--r--web/src/js/__tests__/components/FlowView/__snapshots__/NavSpec.js.snap35
2 files changed, 73 insertions, 0 deletions
diff --git a/web/src/js/__tests__/components/FlowView/NavSpec.js b/web/src/js/__tests__/components/FlowView/NavSpec.js
new file mode 100644
index 00000000..867e6f2c
--- /dev/null
+++ b/web/src/js/__tests__/components/FlowView/NavSpec.js
@@ -0,0 +1,38 @@
+import React from 'react'
+import renderer from 'react-test-renderer'
+import Nav, { NavAction } from '../../../components/FlowView/Nav'
+
+describe('Nav Component', () => {
+ let tabs = ['foo', 'bar'],
+ onSelectTab = jest.fn(),
+ nav = renderer.create(<Nav active='foo' tabs={tabs} onSelectTab={onSelectTab}/>),
+ tree = nav.toJSON()
+
+ it('should render correctly', () => {
+ expect(tree).toMatchSnapshot()
+ })
+
+ it('should handle click', () => {
+ let mockEvent = { preventDefault: jest.fn() }
+ tree.children[0].props.onClick(mockEvent)
+ expect(mockEvent.preventDefault).toBeCalled()
+ expect(onSelectTab).toBeCalledWith('foo')
+ })
+})
+
+describe('NavAction Component', () => {
+ let clickFn = jest.fn(),
+ navAction = renderer.create(<NavAction icon="foo" title="bar" onClick={clickFn}/>),
+ tree = navAction.toJSON()
+
+ it('should render correctly', () => {
+ expect(tree).toMatchSnapshot()
+ })
+
+ it('should handle click', () => {
+ let mockEvent = { preventDefault: jest.fn() }
+ tree.props.onClick(mockEvent)
+ expect(mockEvent.preventDefault).toBeCalled()
+ expect(clickFn).toBeCalledWith(mockEvent)
+ })
+})
diff --git a/web/src/js/__tests__/components/FlowView/__snapshots__/NavSpec.js.snap b/web/src/js/__tests__/components/FlowView/__snapshots__/NavSpec.js.snap
new file mode 100644
index 00000000..b1b1d3fd
--- /dev/null
+++ b/web/src/js/__tests__/components/FlowView/__snapshots__/NavSpec.js.snap
@@ -0,0 +1,35 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`Nav Component should render correctly 1`] = `
+<nav
+ className="nav-tabs nav-tabs-sm"
+>
+ <a
+ className="active"
+ href="#"
+ onClick={[Function]}
+ >
+ Foo
+ </a>
+ <a
+ className=""
+ href="#"
+ onClick={[Function]}
+ >
+ Bar
+ </a>
+</nav>
+`;
+
+exports[`NavAction Component should render correctly 1`] = `
+<a
+ className="nav-action"
+ href="#"
+ onClick={[Function]}
+ title="bar"
+>
+ <i
+ className="fa fa-fw foo"
+ />
+</a>
+`;