|
1 /* |
|
2 * WARNING! |
|
3 * |
|
4 * Do not edit this file directly, it is built from the sources at |
|
5 * https://github.com/mozilla/source-map/ |
|
6 */ |
|
7 |
|
8 Components.utils.import('resource://test/Utils.jsm'); |
|
9 /* -*- Mode: js; js-indent-level: 2; -*- */ |
|
10 /* |
|
11 * Copyright 2011 Mozilla Foundation and contributors |
|
12 * Licensed under the New BSD license. See LICENSE or: |
|
13 * http://opensource.org/licenses/BSD-3-Clause |
|
14 */ |
|
15 define("test/source-map/test-dog-fooding", ["require", "exports", "module"], function (require, exports, module) { |
|
16 |
|
17 var SourceMapConsumer = require('source-map/source-map-consumer').SourceMapConsumer; |
|
18 var SourceMapGenerator = require('source-map/source-map-generator').SourceMapGenerator; |
|
19 |
|
20 exports['test eating our own dog food'] = function (assert, util) { |
|
21 var smg = new SourceMapGenerator({ |
|
22 file: 'testing.js', |
|
23 sourceRoot: '/wu/tang' |
|
24 }); |
|
25 |
|
26 smg.addMapping({ |
|
27 source: 'gza.coffee', |
|
28 original: { line: 1, column: 0 }, |
|
29 generated: { line: 2, column: 2 } |
|
30 }); |
|
31 |
|
32 smg.addMapping({ |
|
33 source: 'gza.coffee', |
|
34 original: { line: 2, column: 0 }, |
|
35 generated: { line: 3, column: 2 } |
|
36 }); |
|
37 |
|
38 smg.addMapping({ |
|
39 source: 'gza.coffee', |
|
40 original: { line: 3, column: 0 }, |
|
41 generated: { line: 4, column: 2 } |
|
42 }); |
|
43 |
|
44 smg.addMapping({ |
|
45 source: 'gza.coffee', |
|
46 original: { line: 4, column: 0 }, |
|
47 generated: { line: 5, column: 2 } |
|
48 }); |
|
49 |
|
50 var smc = new SourceMapConsumer(smg.toString()); |
|
51 |
|
52 // Exact |
|
53 util.assertMapping(2, 2, '/wu/tang/gza.coffee', 1, 0, null, smc, assert); |
|
54 util.assertMapping(3, 2, '/wu/tang/gza.coffee', 2, 0, null, smc, assert); |
|
55 util.assertMapping(4, 2, '/wu/tang/gza.coffee', 3, 0, null, smc, assert); |
|
56 util.assertMapping(5, 2, '/wu/tang/gza.coffee', 4, 0, null, smc, assert); |
|
57 |
|
58 // Fuzzy |
|
59 |
|
60 // Original to generated |
|
61 util.assertMapping(2, 0, null, null, null, null, smc, assert, true); |
|
62 util.assertMapping(2, 9, '/wu/tang/gza.coffee', 1, 0, null, smc, assert, true); |
|
63 util.assertMapping(3, 0, '/wu/tang/gza.coffee', 1, 0, null, smc, assert, true); |
|
64 util.assertMapping(3, 9, '/wu/tang/gza.coffee', 2, 0, null, smc, assert, true); |
|
65 util.assertMapping(4, 0, '/wu/tang/gza.coffee', 2, 0, null, smc, assert, true); |
|
66 util.assertMapping(4, 9, '/wu/tang/gza.coffee', 3, 0, null, smc, assert, true); |
|
67 util.assertMapping(5, 0, '/wu/tang/gza.coffee', 3, 0, null, smc, assert, true); |
|
68 util.assertMapping(5, 9, '/wu/tang/gza.coffee', 4, 0, null, smc, assert, true); |
|
69 |
|
70 // Generated to original |
|
71 util.assertMapping(2, 2, '/wu/tang/gza.coffee', 1, 1, null, smc, assert, null, true); |
|
72 util.assertMapping(3, 2, '/wu/tang/gza.coffee', 2, 3, null, smc, assert, null, true); |
|
73 util.assertMapping(4, 2, '/wu/tang/gza.coffee', 3, 6, null, smc, assert, null, true); |
|
74 util.assertMapping(5, 2, '/wu/tang/gza.coffee', 4, 9, null, smc, assert, null, true); |
|
75 }; |
|
76 |
|
77 }); |
|
78 function run_test() { |
|
79 runSourceMapTests('test/source-map/test-dog-fooding', do_throw); |
|
80 } |