aboutsummaryrefslogtreecommitdiffstats
path: root/web/src/js/__tests__/components/ContentViewSpec.js
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2017-06-26 12:32:11 +0200
committerGitHub <noreply@github.com>2017-06-26 12:32:11 +0200
commit35430bf99f36177978b0156b47e010198f679e27 (patch)
tree1692f7231ca93e2e494b29b397119f7054f410d5 /web/src/js/__tests__/components/ContentViewSpec.js
parent646f26b0e288109f0c975d616a242d17442792eb (diff)
parent9ff29cdb2b790e0b88fb8a5519dc13785f3c9819 (diff)
downloadmitmproxy-35430bf99f36177978b0156b47e010198f679e27.tar.gz
mitmproxy-35430bf99f36177978b0156b47e010198f679e27.tar.bz2
mitmproxy-35430bf99f36177978b0156b47e010198f679e27.zip
Merge pull request #2413 from MatthewShao/jest-dev
[web] Add tests for js/components/*
Diffstat (limited to 'web/src/js/__tests__/components/ContentViewSpec.js')
-rw-r--r--web/src/js/__tests__/components/ContentViewSpec.js62
1 files changed, 62 insertions, 0 deletions
diff --git a/web/src/js/__tests__/components/ContentViewSpec.js b/web/src/js/__tests__/components/ContentViewSpec.js
new file mode 100644
index 00000000..a654870e
--- /dev/null
+++ b/web/src/js/__tests__/components/ContentViewSpec.js
@@ -0,0 +1,62 @@
+import React from 'react'
+import renderer from 'react-test-renderer'
+import ContentView from '../../components/ContentView'
+import { TStore, TFlow } from '../ducks/tutils'
+import { Provider } from 'react-redux'
+import mockXMLHttpRequest from 'mock-xmlhttprequest'
+
+global.XMLHttpRequest = mockXMLHttpRequest
+
+describe('ContentView Component', () => {
+ let store = TStore()
+
+ it('should render correctly', () => {
+ store.getState().ui.flow.contentView = 'Edit'
+ let tflow = TFlow(),
+ provider = renderer.create(
+ <Provider store={store}>
+ <ContentView flow={tflow} message={tflow.request}/>
+ </Provider>),
+ tree = provider.toJSON()
+ expect(tree).toMatchSnapshot()
+ })
+
+ it('should render correctly with empty content', () => {
+ let tflow = TFlow()
+ tflow.response.contentLength = 0
+ let provider = renderer.create(
+ <Provider store={store}>
+ <ContentView flow={tflow} message={tflow.response} readonly={true}/>
+ </Provider>),
+ tree = provider.toJSON()
+ expect(tree).toMatchSnapshot()
+ })
+
+ it('should render correctly with missing content', () => {
+ let tflow = TFlow()
+ tflow.response.contentLength = null
+ let provider = renderer.create(
+ <Provider store={store}>
+ <ContentView flow={tflow} message={tflow.response} readonly={true}/>
+ </Provider>),
+ tree = provider.toJSON()
+ expect(tree).toMatchSnapshot()
+ })
+
+ it('should render correctly with content too large', () => {
+ let tflow = TFlow()
+ tflow.response.contentLength = 1024 * 1024 * 100
+ let provider = renderer.create(
+ <Provider store={store}>
+ <ContentView
+ flow={tflow}
+ message={tflow.response}
+ readonly={true}
+ uploadContent={jest.fn()}
+ onOpenFile={jest.fn()}
+ />
+ </Provider>),
+ tree = provider.toJSON()
+ expect(tree).toMatchSnapshot()
+ })
+})