UNPKG

2.55 kBJavaScriptView Raw
1'use strict';
2/*jshint asi: true */
3
4var test = require('tape')
5 , stackMapper = require('../../')
6 , relevant = require('../util/relevant')
7
8var origStack = [
9 'Error',
10 ' at bar (/full/path/to/bundle.js:7:12)',
11 ' at Object.main (/full/path/to/bundle.js:9:10)',
12 ' at /Users/thlorenz/dev/js/projects/stack-mapper/test/onefile.js:18:21',
13 ' at /Users/thlorenz/dev/js/projects/stack-mapper/test/util/bundle-n-map.js:19:7',
14 ' at /Users/thlorenz/dev/js/projects/stack-mapper/node_modules/browserify/index.js:232:22',
15 ' at /Users/thlorenz/dev/js/projects/stack-mapper/node_modules/browserify/index.js:232:22',
16 ' at ConcatStream.cb (/Users/thlorenz/dev/js/projects/stack-mapper/node_modules/browserify/index.js:268:46)',
17 ' at ConcatStream.end (/Users/thlorenz/dev/js/projects/stack-mapper/node_modules/browserify/node_modules/concat-stream/index.js:42:21)',
18 ' at Stream.onend (stream.js:79:10)',
19 ' at Stream.EventEmitter.emit (events.js:117:20)' ]
20 .join('\n')
21
22var map = {
23 version: 3,
24 file: 'generated.js',
25 sources: [ '/Users/thlorenz/dev/js/projects/stack-mapper/test/onefile/main.js' ],
26 names: [],
27 mappings: ';AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA',
28 sourcesContent: [ '\'use strict\';\n\nmodule.exports = function main() {\n var a = 1;\n function bar() {\n return new Error();\n }\n return bar();\n}\n' ] }
29
30
31test('\none file returning error no sources', function (t) {
32 var sm = stackMapper(map);
33 var info = sm.map(origStack);
34 var stack = relevant(info, 4);
35
36 t.deepEqual(
37 stack
38 , [ 'Error',
39 ' at bar (/Users/thlorenz/dev/js/projects/stack-mapper/test/onefile/main.js:6:12)',
40 ' at Object.main (/Users/thlorenz/dev/js/projects/stack-mapper/test/onefile/main.js:8:10)',
41 ' at /Users/thlorenz/dev/js/projects/stack-mapper/test/onefile.js' ]
42 , 'returns stack with all trace information mapped'
43 )
44
45 t.end()
46})
47
48test('\none file returning error including sources', function (t) {
49 var sm = stackMapper(map);
50 var info = sm.map(origStack, true);
51 var stack = relevant(info, 5);
52
53 t.deepEqual(
54 stack
55 , [ 'Error',
56 ' at bar (/Users/thlorenz/dev/js/projects/stack-mapper/test/onefile/main.js:6:12)',
57 '\t" return new Error();"',
58 ' at Object.main (/Users/thlorenz/dev/js/projects/stack-mapper/test/onefile/main.js:8:10)',
59 ' at /Users/thlorenz/dev/js/projects/stack-mapper/test/onefile.js' ]
60 , 'returns stack with all trace information mapped'
61 )
62 t.end()
63})