From 5df0ddf358367dcd37c934798464ad91f3c7bdf8 Mon Sep 17 00:00:00 2001 From: Matthew Shao Date: Fri, 19 May 2017 09:49:10 +0800 Subject: [web] Updates test to use the new _tflow.js. --- .../components/FlowTable/FlowColumnsSpec.js | 50 +++++++++++----------- .../__snapshots__/FlowColumnsSpec.js.snap | 16 +++---- web/src/js/__tests__/ducks/tutils.js | 27 ------------ 3 files changed, 30 insertions(+), 63 deletions(-) (limited to 'web/src/js') diff --git a/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js b/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js index 576838f4..7f30b809 100644 --- a/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js +++ b/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js @@ -1,101 +1,101 @@ import React from 'react' import renderer from 'react-test-renderer' import * as Columns from '../../../components/FlowTable/FlowColumns' -import { TFlow } from '../../ducks/tutils' +import _tflow from '../../ducks/_tflow' describe('FlowColumns Components', () => { - let tFlow = new TFlow() + let tflow = _tflow() it('should render TLSColumn', () => { - let tlsColumn = renderer.create(), + let tlsColumn = renderer.create(), tree = tlsColumn.toJSON() expect(tree).toMatchSnapshot() }) it('should render IconColumn', () => { - let iconColumn = renderer.create(), + let iconColumn = renderer.create(), tree = iconColumn.toJSON() // plain expect(tree).toMatchSnapshot() // not modified - tFlow.response.status_code = 304 - iconColumn = renderer.create() + tflow.response.status_code = 304 + iconColumn = renderer.create() tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() // redirect - tFlow.response.status_code = 302 - iconColumn = renderer.create() + tflow.response.status_code = 302 + iconColumn = renderer.create() tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() // image - let imageFlow = new TFlow() + let imageFlow = _tflow() imageFlow.response.headers = [['Content-Type', 'image/jpeg']] iconColumn = renderer.create() tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() // javascript - let jsFlow = new TFlow() + let jsFlow = _tflow() jsFlow.response.headers = [['Content-Type', 'application/x-javascript']] iconColumn = renderer.create() tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() // css - let cssFlow = new TFlow() + let cssFlow = _tflow() cssFlow.response.headers = [['Content-Type', 'text/css']] iconColumn = renderer.create() tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() // default - let fooFlow = new TFlow() + let fooFlow = _tflow() fooFlow.response.headers = [['Content-Type', 'foo']] iconColumn = renderer.create() tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() // no response - tFlow.response = null - iconColumn = renderer.create() + tflow.response = null + iconColumn = renderer.create() tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() }) it('should render pathColumn', () => { - let pathColumn = renderer.create(), + let pathColumn = renderer.create(), tree = pathColumn.toJSON() expect(tree).toMatchSnapshot() - tFlow.error.msg = 'Connection killed' - tFlow.intercepted = true - pathColumn = renderer.create() + tflow.error.msg = 'Connection killed' + tflow.intercepted = true + pathColumn = renderer.create() tree = pathColumn.toJSON() expect(tree).toMatchSnapshot() }) it('should render MethodColumn', () => { - let methodColumn =renderer.create(), + let methodColumn =renderer.create(), tree = methodColumn.toJSON() expect(tree).toMatchSnapshot() }) it('should render StatusColumn', () => { - let statusColumn = renderer.create(), + let statusColumn = renderer.create(), tree = statusColumn.toJSON() expect(tree).toMatchSnapshot() }) it('should render SizeColumn', () => { - tFlow = new TFlow() - let sizeColumn = renderer.create(), + tflow = _tflow() + let sizeColumn = renderer.create(), tree = sizeColumn.toJSON() expect(tree).toMatchSnapshot() }) it('should render TimeColumn', () => { - let timeColumn = renderer.create(), + let timeColumn = renderer.create(), tree = timeColumn.toJSON() expect(tree).toMatchSnapshot() - tFlow.response = null - timeColumn = renderer.create(), + tflow.response = null + timeColumn = renderer.create(), tree = timeColumn.toJSON() expect(tree).toMatchSnapshot() }) diff --git a/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap b/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap index ec260e1e..c74f686e 100644 --- a/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap +++ b/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap @@ -5,7 +5,7 @@ exports[`FlowColumns Components should render IconColumn 1`] = ` className="col-icon" >
`; @@ -92,7 +92,7 @@ exports[`FlowColumns Components should render SizeColumn 1`] = ` - 100b + 14b `; @@ -112,7 +112,7 @@ exports[`FlowColumns Components should render TimeColumn 1`] = ` - 2min + 415322h `; @@ -128,13 +128,10 @@ exports[`FlowColumns Components should render pathColumn 1`] = ` - - http://undefined:undefinedundefined + http://address:22/path `; @@ -142,15 +139,12 @@ exports[`FlowColumns Components should render pathColumn 2`] = ` - - http://undefined:undefinedundefined + http://address:22/path `; diff --git a/web/src/js/__tests__/ducks/tutils.js b/web/src/js/__tests__/ducks/tutils.js index f140222d..6ae7f080 100644 --- a/web/src/js/__tests__/ducks/tutils.js +++ b/web/src/js/__tests__/ducks/tutils.js @@ -7,30 +7,3 @@ export function createStore(parts) { applyMiddleware(...[thunk]) ) } - -export function TFlow(intercepted=false, marked=false, modified=false) { - return { - intercepted , - marked, - modified, - id: "foo", - request: { - scheme: 'http', - is_replay: true, - method: 'GET', - contentLength: 100 - }, - response: { - status_code: 200, - headers: [["Content-Type", 'text/html']], - timestamp_end: 200 - }, - error: { - msg: '' - }, - server_conn: { - timestamp_start: 100 - }, - type: 'http' - } -} -- cgit v1.2.3 From 55a58c4c6f46e7bbe78d20c31b1ede4a1357ec82 Mon Sep 17 00:00:00 2001 From: Matthew Shao Date: Fri, 19 May 2017 10:17:06 +0800 Subject: [web] Add js/__tests__/ducks/_tflow.js --- web/src/js/__tests__/ducks/_tflow.js | 97 ++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 web/src/js/__tests__/ducks/_tflow.js (limited to 'web/src/js') diff --git a/web/src/js/__tests__/ducks/_tflow.js b/web/src/js/__tests__/ducks/_tflow.js new file mode 100644 index 00000000..8ff8c96c --- /dev/null +++ b/web/src/js/__tests__/ducks/_tflow.js @@ -0,0 +1,97 @@ +export default function(){ + return { + "client_conn": { + "address": [ + "address", + 22 + ], + "alpn_proto_negotiated": "http/1.1", + "cipher_name": "cipher", + "clientcert": null, + "id": "75bfd3cd-a084-4d84-a063-b0804dc91342", + "sni": "address", + "ssl_established": false, + "timestamp_end": 3.0, + "timestamp_ssl_setup": 2.0, + "timestamp_start": 1.0, + "tls_version": "TLSv1.2" + }, + "error": { + "msg": "error", + "timestamp": 1495158272.596447 + }, + "id": "8035b342-c916-44f7-93fa-293b40a7d3ad", + "intercepted": false, + "marked": false, + "modified": false, + "request": { + "contentHash": "ed7002b439e9ac845f22357d822bac1444730fbdb6016d3ec9432297b9ec9f73", + "contentLength": 7, + "headers": [ + [ + "header", + "qvalue" + ], + [ + "content-length", + "7" + ] + ], + "host": "address", + "http_version": "HTTP/1.1", + "is_replay": false, + "method": "GET", + "path": "/path", + "port": 22, + "pretty_host": "address", + "scheme": "http", + "timestamp_end": null, + "timestamp_start": null + }, + "response": { + "contentHash": "ab530a13e45914982b79f9b7e3fba994cfd1f3fb22f71cea1afbf02b460c6d1d", + "contentLength": 7, + "headers": [ + [ + "header-response", + "svalue" + ], + [ + "content-length", + "7" + ] + ], + "http_version": "HTTP/1.1", + "is_replay": false, + "reason": "OK", + "status_code": 200, + "timestamp_end": 1495158272.5964308, + "timestamp_start": 1495158272.5964305 + }, + "server_conn": { + "address": [ + "address", + 22 + ], + "alpn_proto_negotiated": null, + "id": "9a5d01d7-ede8-4409-b064-230305bfa29d", + "ip_address": [ + "192.168.0.1", + 22 + ], + "sni": "address", + "source_address": [ + "address", + 22 + ], + "ssl_established": false, + "timestamp_end": 4.0, + "timestamp_ssl_setup": 3.0, + "timestamp_start": 1.0, + "timestamp_tcp_setup": 2.0, + "tls_version": "TLSv1.2", + "via": null + }, + "type": "http" +} +} \ No newline at end of file -- cgit v1.2.3 From 2c38fddea5eae0fe60822ee2fcf2565889f258b9 Mon Sep 17 00:00:00 2001 From: Matthew Shao Date: Sun, 21 May 2017 20:59:19 +0800 Subject: [web] TFlow minor improved. --- .../js/__tests__/components/FlowTable/FlowColumnsSpec.js | 14 +++++++------- .../FlowTable/__snapshots__/FlowColumnsSpec.js.snap | 2 +- web/src/js/__tests__/ducks/_tflow.js | 12 ++++++------ web/src/js/__tests__/ducks/tutils.js | 2 ++ 4 files changed, 16 insertions(+), 14 deletions(-) (limited to 'web/src/js') diff --git a/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js b/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js index 7f30b809..1427cb1b 100644 --- a/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js +++ b/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js @@ -1,11 +1,11 @@ import React from 'react' import renderer from 'react-test-renderer' import * as Columns from '../../../components/FlowTable/FlowColumns' -import _tflow from '../../ducks/_tflow' +import { TFlow } from '../../ducks/tutils' describe('FlowColumns Components', () => { - let tflow = _tflow() + let tflow = TFlow() it('should render TLSColumn', () => { let tlsColumn = renderer.create(), tree = tlsColumn.toJSON() @@ -28,25 +28,25 @@ describe('FlowColumns Components', () => { tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() // image - let imageFlow = _tflow() + let imageFlow = TFlow() imageFlow.response.headers = [['Content-Type', 'image/jpeg']] iconColumn = renderer.create() tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() // javascript - let jsFlow = _tflow() + let jsFlow = TFlow() jsFlow.response.headers = [['Content-Type', 'application/x-javascript']] iconColumn = renderer.create() tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() // css - let cssFlow = _tflow() + let cssFlow = TFlow() cssFlow.response.headers = [['Content-Type', 'text/css']] iconColumn = renderer.create() tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() // default - let fooFlow = _tflow() + let fooFlow = TFlow() fooFlow.response.headers = [['Content-Type', 'foo']] iconColumn = renderer.create() tree = iconColumn.toJSON() @@ -83,7 +83,7 @@ describe('FlowColumns Components', () => { }) it('should render SizeColumn', () => { - tflow = _tflow() + tflow = TFlow() let sizeColumn = renderer.create(), tree = sizeColumn.toJSON() expect(tree).toMatchSnapshot() diff --git a/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap b/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap index c74f686e..9c7cec86 100644 --- a/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap +++ b/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap @@ -112,7 +112,7 @@ exports[`FlowColumns Components should render TimeColumn 1`] = ` - 415322h + 415381h `; diff --git a/web/src/js/__tests__/ducks/_tflow.js b/web/src/js/__tests__/ducks/_tflow.js index 8ff8c96c..f6a382bd 100644 --- a/web/src/js/__tests__/ducks/_tflow.js +++ b/web/src/js/__tests__/ducks/_tflow.js @@ -8,7 +8,7 @@ export default function(){ "alpn_proto_negotiated": "http/1.1", "cipher_name": "cipher", "clientcert": null, - "id": "75bfd3cd-a084-4d84-a063-b0804dc91342", + "id": "4a18d1a0-50a1-48dd-9aa6-d45d74282939", "sni": "address", "ssl_established": false, "timestamp_end": 3.0, @@ -18,9 +18,9 @@ export default function(){ }, "error": { "msg": "error", - "timestamp": 1495158272.596447 + "timestamp": 1495370312.4814785 }, - "id": "8035b342-c916-44f7-93fa-293b40a7d3ad", + "id": "d91165be-ca1f-4612-88a9-c0f8696f3e29", "intercepted": false, "marked": false, "modified": false, @@ -65,8 +65,8 @@ export default function(){ "is_replay": false, "reason": "OK", "status_code": 200, - "timestamp_end": 1495158272.5964308, - "timestamp_start": 1495158272.5964305 + "timestamp_end": 1495370312.4814625, + "timestamp_start": 1495370312.481462 }, "server_conn": { "address": [ @@ -74,7 +74,7 @@ export default function(){ 22 ], "alpn_proto_negotiated": null, - "id": "9a5d01d7-ede8-4409-b064-230305bfa29d", + "id": "f087e7b2-6d0a-41a8-a8f0-e1a4761395f8", "ip_address": [ "192.168.0.1", 22 diff --git a/web/src/js/__tests__/ducks/tutils.js b/web/src/js/__tests__/ducks/tutils.js index 6ae7f080..211b61e3 100644 --- a/web/src/js/__tests__/ducks/tutils.js +++ b/web/src/js/__tests__/ducks/tutils.js @@ -7,3 +7,5 @@ export function createStore(parts) { applyMiddleware(...[thunk]) ) } + +export { default as TFlow } from './_tflow' -- cgit v1.2.3 From 546bac68d471d23bee70b549a5179a775fded4fc Mon Sep 17 00:00:00 2001 From: Matthew Shao Date: Mon, 22 May 2017 10:46:03 +0800 Subject: [web] Fix 100% coverage for js/components/FlowTable/FlowColumns.js --- web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js | 6 ++++++ .../FlowTable/__snapshots__/FlowColumnsSpec.js.snap | 12 +++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) (limited to 'web/src/js') diff --git a/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js b/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js index 1427cb1b..f3373c02 100644 --- a/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js +++ b/web/src/js/__tests__/components/FlowTable/FlowColumnsSpec.js @@ -45,6 +45,12 @@ describe('FlowColumns Components', () => { iconColumn = renderer.create() tree = iconColumn.toJSON() expect(tree).toMatchSnapshot() + // html + let htmlFlow = TFlow() + htmlFlow.response.headers = [['Content-Type', 'text/html']] + iconColumn = renderer.create() + tree = iconColumn.toJSON() + expect(tree).toMatchSnapshot() // default let fooFlow = TFlow() fooFlow.response.headers = [['Content-Type', 'foo']] diff --git a/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap b/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap index 9c7cec86..d6946507 100644 --- a/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap +++ b/web/src/js/__tests__/components/FlowTable/__snapshots__/FlowColumnsSpec.js.snap @@ -65,7 +65,7 @@ exports[`FlowColumns Components should render IconColumn 7`] = ` className="col-icon" >
`; @@ -80,6 +80,16 @@ exports[`FlowColumns Components should render IconColumn 8`] = ` `; +exports[`FlowColumns Components should render IconColumn 9`] = ` + +
+ +`; + exports[`FlowColumns Components should render MethodColumn 1`] = `