Skip to content

Commit 73e6c12

Browse files
authored
Merge pull request #29 from takikawa/rangemappings
Add initial range mapping proposal tests
2 parents 7fe876c + 99d30c9 commit 73e6c12

21 files changed

+249
-0
lines changed

range-mappings-proposal-tests.json

+142
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
{
2+
"resourceBasePath": "proposals/range-mappings",
3+
"tests": [
4+
{
5+
"name": "rangeMappingsWrongType1",
6+
"description": "Test an invalid source map with a malformed rangeMappings field",
7+
"baseFile": "wrong-type-1.js",
8+
"sourceMapFile": "wrong-type-1.js.map",
9+
"sourceMapIsValid": false
10+
},
11+
{
12+
"name": "rangeMappingsWrongType2",
13+
"description": "Test an invalid source map with a malformed rangeMappings field",
14+
"baseFile": "wrong-type-2.js",
15+
"sourceMapFile": "wrong-type-2.js.map",
16+
"sourceMapIsValid": false
17+
},
18+
{
19+
"name": "rangeMappingsWrongType3",
20+
"description": "Test an invalid source map with a malformed rangeMappings field",
21+
"baseFile": "wrong-type-3.js",
22+
"sourceMapFile": "wrong-type-3.js.map",
23+
"sourceMapIsValid": false
24+
},
25+
{
26+
"name": "rangeMappingsInvalidBase64Char1",
27+
"description": "Test an invalid range mapping with an invalid base64 character",
28+
"baseFile": "invalid-base64-char-1.js",
29+
"sourceMapFile": "invalid-base64-char-1.js.map",
30+
"sourceMapIsValid": false
31+
},
32+
{
33+
"name": "rangeMappingsInvalidBase64Char2",
34+
"description": "Test an invalid range mapping with an invalid base64 character",
35+
"baseFile": "invalid-base64-char-2.js",
36+
"sourceMapFile": "invalid-base64-char-2.js.map",
37+
"sourceMapIsValid": false
38+
},
39+
{
40+
"name": "rangeMappingsOutOfRange",
41+
"description": "Test an invalid range mapping which is outside the mappings length",
42+
"baseFile": "out-of-range.js",
43+
"sourceMapFile": "out-of-range.js.map",
44+
"sourceMapIsValid": false
45+
},
46+
{
47+
"name": "rangeMappingsEmpty",
48+
"description": "Test a trivial range mapping that is the empty string",
49+
"baseFile": "empty-string.js",
50+
"sourceMapFile": "empty-string.js.map",
51+
"sourceMapIsValid": true
52+
},
53+
{
54+
"name": "rangeMappingsNonFullLineCoverage",
55+
"description": "Test a non-empty range mapping where not all lines in the generated source are covered",
56+
"baseFile": "non-full-line-coverage.js",
57+
"sourceMapFile": "non-full-line-coverage.js.map",
58+
"sourceMapIsValid": true
59+
},
60+
{
61+
"name": "rangeMappingsSimple",
62+
"description": "Test a simple, single-entry rangeMappings",
63+
"baseFile": "simple.js",
64+
"sourceMapFile": "simple.js.map",
65+
"sourceMapIsValid": true,
66+
"testActions": [
67+
{
68+
"actionType": "checkMapping",
69+
"generatedLine": 1,
70+
"generatedColumn": 1,
71+
"originalSource": "simple-original.js",
72+
"originalLine": 0,
73+
"originalColumn": 0,
74+
"mappedName": null
75+
},
76+
{
77+
"actionType": "checkMapping",
78+
"generatedLine": 1,
79+
"generatedColumn": 2,
80+
"originalSource": "simple-original.js",
81+
"originalLine": 0,
82+
"originalColumn": 1,
83+
"mappedName": null
84+
},
85+
{
86+
"actionType": "checkMapping",
87+
"generatedLine": 1,
88+
"generatedColumn": 3,
89+
"originalSource": "simple-original.js",
90+
"originalLine": 0,
91+
"originalColumn": 2,
92+
"mappedName": null
93+
}
94+
]
95+
},
96+
{
97+
"name": "rangeMappingsNewline",
98+
"description": "Test rangeMappings entry continues through newlines",
99+
"baseFile": "newline-semantics.js",
100+
"sourceMapFile": "newline-semantics.js.map",
101+
"sourceMapIsValid": true,
102+
"testActions": [
103+
{
104+
"actionType": "checkMapping",
105+
"generatedLine": 0,
106+
"generatedColumn": 1,
107+
"originalSource": "newline-semantics-original.js",
108+
"originalLine": 0,
109+
"originalColumn": 0,
110+
"mappedName": null
111+
},
112+
{
113+
"actionType": "checkMapping",
114+
"generatedLine": 0,
115+
"generatedColumn": 7,
116+
"originalSource": "newline-semantics-original.js",
117+
"originalLine": 0,
118+
"originalColumn": 6,
119+
"mappedName": null
120+
},
121+
{
122+
"actionType": "checkMapping",
123+
"generatedLine": 1,
124+
"generatedColumn": 0,
125+
"originalSource": "newline-semantics-original.js",
126+
"originalLine": 0,
127+
"originalColumn": 7,
128+
"mappedName": null
129+
},
130+
{
131+
"actionType": "checkMapping",
132+
"generatedLine": 1,
133+
"generatedColumn": 5,
134+
"originalSource": "newline-semantics-original.js",
135+
"originalLine": 0,
136+
"originalColumn": 12,
137+
"mappedName": null
138+
}
139+
]
140+
}
141+
]
142+
}

resources/proposals/range-mappings/empty-string.js

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/empty-string.js.map

+9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/invalid-base64-char-1.js

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/invalid-base64-char-1.js.map

+9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/invalid-base64-char-2.js

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/invalid-base64-char-2.js.map

+9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/newline-semantics.js

+3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/newline-semantics.js.map

+9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/non-full-line-coverage.js

+3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/non-full-line-coverage.js.map

+9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/out-of-range.js

+2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/out-of-range.js.map

+9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/simple.js

+3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/simple.js.map

+9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/wrong-type-1.js

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/wrong-type-1.js.map

+9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/wrong-type-2.js

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/wrong-type-2.js.map

+9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/wrong-type-3.js

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

resources/proposals/range-mappings/wrong-type-3.js.map

+9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)