1
0
Fork 0
mirror of https://github.com/jashkenas/coffeescript.git synced 2022-11-09 12:23:24 -05:00
jashkenas--coffeescript/test/sourcemap.coffee

56 lines
1.2 KiB
CoffeeScript
Raw Normal View History

2013-03-04 14:19:08 -05:00
return if global.testingBrowser
SourceMap = require '../src/sourcemap'
2013-02-28 15:51:29 -05:00
vlqEncodedValues = [
[1, "C"],
[-1, "D"],
[2, "E"],
[-2, "F"],
[0, "A"],
[16, "gB"],
[948, "o7B"]
]
test "encodeVlq tests", ->
2013-02-28 15:51:29 -05:00
for pair in vlqEncodedValues
eq ((new SourceMap).encodeVlq pair[0]), pair[1]
2013-02-28 15:51:29 -05:00
test "SourceMap tests", ->
map = new SourceMap
map.add [0, 0], [0, 0]
map.add [1, 5], [2, 4]
map.add [1, 6], [2, 7]
map.add [1, 9], [2, 8]
map.add [3, 0], [3, 4]
testWithFilenames = map.generate {
sourceRoot: ""
sourceFiles: ["source.coffee"]
generatedFile: "source.js"
}
deepEqual testWithFilenames, {
version: 3
file: "source.js"
sourceRoot: ""
sources: ["source.coffee"]
names: []
mappings: "AAAA;;IACK,GAAC,CAAG;IAET"
}
deepEqual map.generate(), {
version: 3
file: ""
sourceRoot: ""
sources: [""]
names: []
mappings: "AAAA;;IACK,GAAC,CAAG;IAET"
}
2013-02-28 15:51:29 -05:00
# Look up a generated column - should get back the original source position.
arrayEq map.sourceLocation([2,8]), [1,9]
2013-02-28 15:51:29 -05:00
2014-08-26 21:34:45 -04:00
# Look up a point further along on the same line - should get back the same source position.
arrayEq map.sourceLocation([2,10]), [1,9]