aboutsummaryrefslogtreecommitdiffstats
path: root/web/src/js/__tests__/components/ContentViewSpec.js
diff options
context:
space:
mode:
Diffstat (limited to 'web/src/js/__tests__/components/ContentViewSpec.js')
-rw-r--r--web/src/js/__tests__/components/ContentViewSpec.js61
1 files changed, 61 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..c106b28b
--- /dev/null
+++ b/web/src/js/__tests__/components/ContentViewSpec.js
@@ -0,0 +1,61 @@
+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', () => {
+ 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()
+ })
+})