Skip to content

Commit 960e8a7

Browse files
committed
Test cases for breakpoint span in array binding pattern of variable statement
1 parent c25bfe5 commit 960e8a7

8 files changed

Lines changed: 482 additions & 0 deletions
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
2+
1 >declare var console: {
3+
4+
~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (0 to 22) SpanInfo: undefined
5+
--------------------------------
6+
2 > log(msg: string): void;
7+
8+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (23 to 50) SpanInfo: undefined
9+
--------------------------------
10+
3 >}
11+
12+
~~ => Pos: (51 to 52) SpanInfo: undefined
13+
--------------------------------
14+
4 >type Robot = [number, string, string];
15+
16+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (53 to 91) SpanInfo: undefined
17+
--------------------------------
18+
5 >var robotA: Robot = [1, "mower", "mowing"];
19+
20+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (92 to 135) SpanInfo: {"start":92,"length":42}
21+
>var robotA: Robot = [1, "mower", "mowing"]
22+
>:=> (line 5, col 0) to (line 5, col 42)
23+
--------------------------------
24+
6 >var robotB: Robot = [2, "trimmer", "trimming"];
25+
26+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=> Pos: (136 to 183) SpanInfo: {"start":136,"length":46}
27+
>var robotB: Robot = [2, "trimmer", "trimming"]
28+
>:=> (line 6, col 0) to (line 6, col 46)
29+
--------------------------------
30+
7 >let [, nameA] = robotA;
31+
32+
~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (184 to 207) SpanInfo: {"start":191,"length":5}
33+
>nameA
34+
>:=> (line 7, col 7) to (line 7, col 12)
35+
--------------------------------
36+
8 >let [numberB] = robotB;
37+
38+
~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (208 to 231) SpanInfo: {"start":213,"length":7}
39+
>numberB
40+
>:=> (line 8, col 5) to (line 8, col 12)
41+
--------------------------------
42+
9 >let [numberA2, nameA2, skillA2] = robotA;
43+
44+
~~~~~~~~~~~~~~ => Pos: (232 to 245) SpanInfo: {"start":237,"length":8}
45+
>numberA2
46+
>:=> (line 9, col 5) to (line 9, col 13)
47+
9 >let [numberA2, nameA2, skillA2] = robotA;
48+
49+
~~~~~~~~ => Pos: (246 to 253) SpanInfo: {"start":247,"length":6}
50+
>nameA2
51+
>:=> (line 9, col 15) to (line 9, col 21)
52+
9 >let [numberA2, nameA2, skillA2] = robotA;
53+
54+
~~~~~~~~ => Pos: (254 to 261) SpanInfo: {"start":255,"length":7}
55+
>skillA2
56+
>:=> (line 9, col 23) to (line 9, col 30)
57+
9 >let [numberA2, nameA2, skillA2] = robotA;
58+
59+
~~~~~~~~~~~~ => Pos: (262 to 273) SpanInfo: {"start":237,"length":8}
60+
>numberA2
61+
>:=> (line 9, col 5) to (line 9, col 13)
62+
--------------------------------
63+
10 >let [numberC2] = [3, "edging", "Trimming edges"];
64+
65+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=> Pos: (274 to 323) SpanInfo: {"start":279,"length":8}
66+
>numberC2
67+
>:=> (line 10, col 5) to (line 10, col 13)
68+
--------------------------------
69+
11 >let [numberC, nameC, skillC] = [3, "edging", "Trimming edges"];
70+
71+
~~~~~~~~~~~~~ => Pos: (324 to 336) SpanInfo: {"start":329,"length":7}
72+
>numberC
73+
>:=> (line 11, col 5) to (line 11, col 12)
74+
11 >let [numberC, nameC, skillC] = [3, "edging", "Trimming edges"];
75+
76+
~~~~~~~ => Pos: (337 to 343) SpanInfo: {"start":338,"length":5}
77+
>nameC
78+
>:=> (line 11, col 14) to (line 11, col 19)
79+
11 >let [numberC, nameC, skillC] = [3, "edging", "Trimming edges"];
80+
81+
~~~~~~~ => Pos: (344 to 350) SpanInfo: {"start":345,"length":6}
82+
>skillC
83+
>:=> (line 11, col 21) to (line 11, col 27)
84+
11 >let [numberC, nameC, skillC] = [3, "edging", "Trimming edges"];
85+
86+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=> Pos: (351 to 387) SpanInfo: {"start":329,"length":7}
87+
>numberC
88+
>:=> (line 11, col 5) to (line 11, col 12)
89+
--------------------------------
90+
12 >let [numberA3, ...robotAInfo] = robotA;
91+
~~~~~~~~~~~~~~ => Pos: (388 to 401) SpanInfo: {"start":393,"length":8}
92+
>numberA3
93+
>:=> (line 12, col 5) to (line 12, col 13)
94+
12 >let [numberA3, ...robotAInfo] = robotA;
95+
~~~~~~~~~~~~~~ => Pos: (402 to 415) SpanInfo: {"start":403,"length":13}
96+
>...robotAInfo
97+
>:=> (line 12, col 15) to (line 12, col 28)
98+
12 >let [numberA3, ...robotAInfo] = robotA;
99+
~~~~~~~~~~~ => Pos: (416 to 426) SpanInfo: {"start":393,"length":8}
100+
>numberA3
101+
>:=> (line 12, col 5) to (line 12, col 13)
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
2+
1 >declare var console: {
3+
4+
~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (0 to 22) SpanInfo: undefined
5+
--------------------------------
6+
2 > log(msg: string): void;
7+
8+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (23 to 50) SpanInfo: undefined
9+
--------------------------------
10+
3 >}
11+
12+
~~ => Pos: (51 to 52) SpanInfo: undefined
13+
--------------------------------
14+
4 >type MultiSkilledRobot = [string, [string, string]];
15+
16+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=> Pos: (53 to 105) SpanInfo: undefined
17+
--------------------------------
18+
5 >var multiRobotA: MultiSkilledRobot = ["mower", ["mowing", ""]];
19+
20+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=> Pos: (106 to 169) SpanInfo: {"start":106,"length":62}
21+
>var multiRobotA: MultiSkilledRobot = ["mower", ["mowing", ""]]
22+
>:=> (line 5, col 0) to (line 5, col 62)
23+
--------------------------------
24+
6 >var multiRobotB: MultiSkilledRobot = ["trimmer", ["trimming", "edging"]];
25+
26+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=> Pos: (170 to 243) SpanInfo: {"start":170,"length":72}
27+
>var multiRobotB: MultiSkilledRobot = ["trimmer", ["trimming", "edging"]]
28+
>:=> (line 6, col 0) to (line 6, col 72)
29+
--------------------------------
30+
7 >
31+
32+
~ => Pos: (244 to 244) SpanInfo: undefined
33+
--------------------------------
34+
8 >let [, skillA] = multiRobotA;
35+
36+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (245 to 274) SpanInfo: {"start":252,"length":6}
37+
>skillA
38+
>:=> (line 8, col 7) to (line 8, col 13)
39+
--------------------------------
40+
9 >let [nameMB] = multiRobotB;
41+
42+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (275 to 302) SpanInfo: {"start":280,"length":6}
43+
>nameMB
44+
>:=> (line 9, col 5) to (line 9, col 11)
45+
--------------------------------
46+
10 >let [nameMA, [primarySkillA, secondarySkillA]] = multiRobotA;
47+
48+
~~~~~~~~~~~~ => Pos: (303 to 314) SpanInfo: {"start":308,"length":6}
49+
>nameMA
50+
>:=> (line 10, col 5) to (line 10, col 11)
51+
10 >let [nameMA, [primarySkillA, secondarySkillA]] = multiRobotA;
52+
53+
~~~~~~~~~~~~~~~~ => Pos: (315 to 330) SpanInfo: {"start":317,"length":13}
54+
>primarySkillA
55+
>:=> (line 10, col 14) to (line 10, col 27)
56+
10 >let [nameMA, [primarySkillA, secondarySkillA]] = multiRobotA;
57+
58+
~~~~~~~~~~~~~~~~ => Pos: (331 to 346) SpanInfo: {"start":332,"length":15}
59+
>secondarySkillA
60+
>:=> (line 10, col 29) to (line 10, col 44)
61+
10 >let [nameMA, [primarySkillA, secondarySkillA]] = multiRobotA;
62+
63+
~ => Pos: (347 to 347) SpanInfo: {"start":317,"length":13}
64+
>primarySkillA
65+
>:=> (line 10, col 14) to (line 10, col 27)
66+
10 >let [nameMA, [primarySkillA, secondarySkillA]] = multiRobotA;
67+
68+
~~~~~~~~~~~~~~~~~=> Pos: (348 to 364) SpanInfo: {"start":308,"length":6}
69+
>nameMA
70+
>:=> (line 10, col 5) to (line 10, col 11)
71+
--------------------------------
72+
11 >
73+
74+
~ => Pos: (365 to 365) SpanInfo: undefined
75+
--------------------------------
76+
12 >let [nameMC] = ["roomba", ["vaccum", "mopping"]];
77+
78+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=> Pos: (366 to 415) SpanInfo: {"start":371,"length":6}
79+
>nameMC
80+
>:=> (line 12, col 5) to (line 12, col 11)
81+
--------------------------------
82+
13 >let [nameMC2, [primarySkillC, secondarySkillC]] = ["roomba", ["vaccum", "mopping"]];
83+
84+
~~~~~~~~~~~~~ => Pos: (416 to 428) SpanInfo: {"start":421,"length":7}
85+
>nameMC2
86+
>:=> (line 13, col 5) to (line 13, col 12)
87+
13 >let [nameMC2, [primarySkillC, secondarySkillC]] = ["roomba", ["vaccum", "mopping"]];
88+
89+
~~~~~~~~~~~~~~~~ => Pos: (429 to 444) SpanInfo: {"start":431,"length":13}
90+
>primarySkillC
91+
>:=> (line 13, col 15) to (line 13, col 28)
92+
13 >let [nameMC2, [primarySkillC, secondarySkillC]] = ["roomba", ["vaccum", "mopping"]];
93+
94+
~~~~~~~~~~~~~~~~ => Pos: (445 to 460) SpanInfo: {"start":446,"length":15}
95+
>secondarySkillC
96+
>:=> (line 13, col 30) to (line 13, col 45)
97+
13 >let [nameMC2, [primarySkillC, secondarySkillC]] = ["roomba", ["vaccum", "mopping"]];
98+
99+
~=> Pos: (461 to 461) SpanInfo: {"start":431,"length":13}
100+
>primarySkillC
101+
>:=> (line 13, col 15) to (line 13, col 28)
102+
13 >let [nameMC2, [primarySkillC, secondarySkillC]] = ["roomba", ["vaccum", "mopping"]];
103+
104+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=> Pos: (462 to 500) SpanInfo: {"start":421,"length":7}
105+
>nameMC2
106+
>:=> (line 13, col 5) to (line 13, col 12)
107+
--------------------------------
108+
14 >
109+
110+
~ => Pos: (501 to 501) SpanInfo: undefined
111+
--------------------------------
112+
15 >let [...multiRobotAInfo] = multiRobotA;
113+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (502 to 540) SpanInfo: {"start":507,"length":18}
114+
>...multiRobotAInfo
115+
>:=> (line 15, col 5) to (line 15, col 23)
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
2+
1 >declare var console: {
3+
4+
~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (0 to 22) SpanInfo: undefined
5+
--------------------------------
6+
2 > log(msg: string): void;
7+
8+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (23 to 50) SpanInfo: undefined
9+
--------------------------------
10+
3 >}
11+
12+
~~ => Pos: (51 to 52) SpanInfo: undefined
13+
--------------------------------
14+
4 >type Robot = [number, string, string];
15+
16+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (53 to 91) SpanInfo: undefined
17+
--------------------------------
18+
5 >var robotA: Robot = [1, "mower", "mowing"];
19+
20+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (92 to 135) SpanInfo: {"start":92,"length":42}
21+
>var robotA: Robot = [1, "mower", "mowing"]
22+
>:=> (line 5, col 0) to (line 5, col 42)
23+
--------------------------------
24+
6 >var robotB: Robot = [2, "trimmer", "trimming"];
25+
26+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=> Pos: (136 to 183) SpanInfo: {"start":136,"length":46}
27+
>var robotB: Robot = [2, "trimmer", "trimming"]
28+
>:=> (line 6, col 0) to (line 6, col 46)
29+
--------------------------------
30+
7 >let [, nameA = "noName"] = robotA;
31+
32+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (184 to 218) SpanInfo: {"start":191,"length":16}
33+
>nameA = "noName"
34+
>:=> (line 7, col 7) to (line 7, col 23)
35+
--------------------------------
36+
8 >let [numberB = -1] = robotB;
37+
38+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ => Pos: (219 to 247) SpanInfo: {"start":224,"length":12}
39+
>numberB = -1
40+
>:=> (line 8, col 5) to (line 8, col 17)
41+
--------------------------------
42+
9 >let [numberA2 = -1, nameA2 = "noName", skillA2 = "noSkill"] = robotA;
43+
44+
~~~~~~~~~~~~~~~~~~~ => Pos: (248 to 266) SpanInfo: {"start":253,"length":13}
45+
>numberA2 = -1
46+
>:=> (line 9, col 5) to (line 9, col 18)
47+
9 >let [numberA2 = -1, nameA2 = "noName", skillA2 = "noSkill"] = robotA;
48+
49+
~~~~~~~~~~~~~~~~~~~ => Pos: (267 to 285) SpanInfo: {"start":268,"length":17}
50+
>nameA2 = "noName"
51+
>:=> (line 9, col 20) to (line 9, col 37)
52+
9 >let [numberA2 = -1, nameA2 = "noName", skillA2 = "noSkill"] = robotA;
53+
54+
~~~~~~~~~~~~~~~~~~~~=> Pos: (286 to 305) SpanInfo: {"start":287,"length":19}
55+
>skillA2 = "noSkill"
56+
>:=> (line 9, col 39) to (line 9, col 58)
57+
9 >let [numberA2 = -1, nameA2 = "noName", skillA2 = "noSkill"] = robotA;
58+
59+
~~~~~~~~~~~~=> Pos: (306 to 317) SpanInfo: {"start":253,"length":13}
60+
>numberA2 = -1
61+
>:=> (line 9, col 5) to (line 9, col 18)
62+
--------------------------------
63+
10 >let [numberC2 = -1] = [3, "edging", "Trimming edges"];
64+
65+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=> Pos: (318 to 372) SpanInfo: {"start":323,"length":13}
66+
>numberC2 = -1
67+
>:=> (line 10, col 5) to (line 10, col 18)
68+
--------------------------------
69+
11 >let [numberC = -1, nameC = "noName", skillC = "noSkill"] = [3, "edging", "Trimming edges"];
70+
71+
~~~~~~~~~~~~~~~~~~ => Pos: (373 to 390) SpanInfo: {"start":378,"length":12}
72+
>numberC = -1
73+
>:=> (line 11, col 5) to (line 11, col 17)
74+
11 >let [numberC = -1, nameC = "noName", skillC = "noSkill"] = [3, "edging", "Trimming edges"];
75+
76+
~~~~~~~~~~~~~~~~~~ => Pos: (391 to 408) SpanInfo: {"start":392,"length":16}
77+
>nameC = "noName"
78+
>:=> (line 11, col 19) to (line 11, col 35)
79+
11 >let [numberC = -1, nameC = "noName", skillC = "noSkill"] = [3, "edging", "Trimming edges"];
80+
81+
~~~~~~~~~~~~~~~~~~~=> Pos: (409 to 427) SpanInfo: {"start":410,"length":18}
82+
>skillC = "noSkill"
83+
>:=> (line 11, col 37) to (line 11, col 55)
84+
11 >let [numberC = -1, nameC = "noName", skillC = "noSkill"] = [3, "edging", "Trimming edges"];
85+
86+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=> Pos: (428 to 464) SpanInfo: {"start":378,"length":12}
87+
>numberC = -1
88+
>:=> (line 11, col 5) to (line 11, col 17)
89+
--------------------------------
90+
12 >let [numberA3 = -1, ...robotAInfo] = robotA;
91+
~~~~~~~~~~~~~~~~~~~ => Pos: (465 to 483) SpanInfo: {"start":470,"length":13}
92+
>numberA3 = -1
93+
>:=> (line 12, col 5) to (line 12, col 18)
94+
12 >let [numberA3 = -1, ...robotAInfo] = robotA;
95+
~~~~~~~~~~~~~~ => Pos: (484 to 497) SpanInfo: {"start":485,"length":13}
96+
>...robotAInfo
97+
>:=> (line 12, col 20) to (line 12, col 33)
98+
12 >let [numberA3 = -1, ...robotAInfo] = robotA;
99+
~~~~~~~~~~~ => Pos: (498 to 508) SpanInfo: {"start":470,"length":13}
100+
>numberA3 = -1
101+
>:=> (line 12, col 5) to (line 12, col 18)

0 commit comments

Comments
 (0)