Skip to content

Commit a00e90c

Browse files
author
Yui T
committed
Add and update tests
1 parent 80cdfd4 commit a00e90c

26 files changed

Lines changed: 466 additions & 395 deletions
Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
// @target: es5
2+
var globalCounter = 0;
23
function foo() {
3-
console.log("Call foo()");
4+
globalCounter += 1;
45
return { 0: 2 };
56
}
7+
foo()[0] **= foo()[0];
68
var result_foo1 = foo()[0] **= foo()[0];
7-
9+
foo()[0] **= foo()[0] **= 2;
810
var result_foo2 = foo()[0] **= foo()[0] **= 2;
9-
11+
foo()[0] **= foo()[0] ** 2;
1012
var result_foo3 = foo()[0] **= foo()[0] ** 2;

tests/cases/conformance/es7/exponentiationOperator/emitCompoundExponentiationAssignmentWithIndexingOnLHS4.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
// @target: es5
22

3+
var globalCounter = 0;
34
function incrementIdx(max: number) {
5+
globalCounter += 1;
46
let idx = Math.floor(Math.random() * max);
57
return idx;
68
}
Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
// @target: es5
22

3+
var globalCounter = 0;
34
function foo() {
5+
globalCounter += 1;
46
return { prop: 2 };
57
}
6-
foo().prop **= 2;
8+
foo().prop **= 2;
9+
var result0 = foo().prop **= 2;
10+
foo().prop **= foo().prop **= 2;
11+
var result1 = foo().prop **= foo().prop **= 2;
12+
foo().prop **= foo().prop ** 2;
13+
var result2 = foo().prop **= foo().prop ** 2;

tests/cases/conformance/es7/exponentiationOperator/emitCompoundExponentiationOperator1ES7.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// @target:es7
1+
// @target: es7
22

33
var comp: number;
44

tests/cases/conformance/es7/exponentiationOperator/emitExponentiationOperator1.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
// @target: es5
22

3+
1 ** -2;
34
1 ** 2;
5+
(-1) ** 2
46
1 ** 2 ** 3;
5-
1 ** -2 ** 3;
6-
1 ** -2 ** -3;
7-
-1 ** -2 ** -3;
8-
-(1 ** 2) ** 3;
7+
1 ** 2 ** -3;
98
1 ** -(2 ** 3);
9+
(-(1 ** 2)) ** 3;
10+
(-(1 ** 2)) ** -3;
1011

1112
1 ** 2 + 3;
1213
1 ** 2 - 3;

tests/cases/conformance/es7/exponentiationOperator/emitExponentiationOperator1ES7.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
// @target: es7
22

3+
1 ** -2;
34
1 ** 2;
5+
(-1) ** 2
46
1 ** 2 ** 3;
5-
1 ** -2 ** 3;
6-
1 ** -2 ** -3;
7-
-1 ** -2 ** -3;
8-
-(1 ** 2) ** 3;
7+
1 ** 2 ** -3;
98
1 ** -(2 ** 3);
9+
(-(1 ** 2)) ** 3;
10+
(-(1 ** 2)) ** -3;
1011

1112
1 ** 2 + 3;
1213
1 ** 2 - 3;

tests/cases/conformance/es7/exponentiationOperator/emitExponentiationOperator2.ts

Lines changed: 2 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,10 @@ temp-- ** 3;
1111
--temp * temp ** 3;
1212
--temp / temp ** 3;
1313
--temp % temp ** 3;
14-
-++temp ** 3;
15-
+--temp ** 3;
16-
1714
temp-- ** 3;
1815
temp++ ** 3;
19-
-temp++ ** 3;
20-
+temp-- ** 3;
16+
temp-- ** -temp;
17+
temp++ ** +temp;
2118

2219
temp-- + temp ** 3;
2320
temp-- - temp ** 3;
@@ -40,27 +37,11 @@ temp-- % temp ** 3;
4037
3 ** --temp;
4138
3 ** temp++;
4239
3 ** temp--;
43-
-3 ** temp++;
44-
-3 ** temp--;
45-
-3 ** ++temp;
46-
-3 ** --temp;
47-
+3 ** temp++;
48-
+3 ** temp--;
49-
+3 ** ++temp;
50-
+3 ** --temp
5140

5241
3 ** ++temp ** 2;
5342
3 ** --temp ** 2;
5443
3 ** temp++ ** 2;
5544
3 ** temp-- ** 2;
56-
-3 ** temp++ ** 2;
57-
-3 ** temp-- ** 2;
58-
-3 ** ++temp ** 2;
59-
-3 ** --temp ** 2;
60-
+3 ** temp++ ** 2;
61-
+3 ** temp-- ** 2;
62-
+3 ** ++temp ** 2;
63-
+3 ** --temp ** 2;
6445

6546
3 ** ++temp + 2;
6647
3 ** ++temp - 2;

tests/cases/conformance/es7/exponentiationOperator/emitExponentiationOperator2ES7.ts

Lines changed: 2 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,10 @@ temp-- ** 3;
1111
--temp * temp ** 3;
1212
--temp / temp ** 3;
1313
--temp % temp ** 3;
14-
-++temp ** 3;
15-
+--temp ** 3;
16-
1714
temp-- ** 3;
1815
temp++ ** 3;
19-
-temp++ ** 3;
20-
+temp-- ** 3;
16+
temp-- ** -temp;
17+
temp++ ** +temp;
2118

2219
temp-- + temp ** 3;
2320
temp-- - temp ** 3;
@@ -40,27 +37,11 @@ temp-- % temp ** 3;
4037
3 ** --temp;
4138
3 ** temp++;
4239
3 ** temp--;
43-
-3 ** temp++;
44-
-3 ** temp--;
45-
-3 ** ++temp;
46-
-3 ** --temp;
47-
+3 ** temp++;
48-
+3 ** temp--;
49-
+3 ** ++temp;
50-
+3 ** --temp
5140

5241
3 ** ++temp ** 2;
5342
3 ** --temp ** 2;
5443
3 ** temp++ ** 2;
5544
3 ** temp-- ** 2;
56-
-3 ** temp++ ** 2;
57-
-3 ** temp-- ** 2;
58-
-3 ** ++temp ** 2;
59-
-3 ** --temp ** 2;
60-
+3 ** temp++ ** 2;
61-
+3 ** temp-- ** 2;
62-
+3 ** ++temp ** 2;
63-
+3 ** --temp ** 2;
6445

6546
3 ** ++temp + 2;
6647
3 ** ++temp - 2;
Lines changed: 40 additions & 114 deletions
Original file line numberDiff line numberDiff line change
@@ -1,114 +1,40 @@
1-
// @target: es5
2-
var temp: any;
3-
4-
delete --temp ** 3;
5-
delete ++temp ** 3;
6-
delete temp-- ** 3;
7-
delete temp++ ** 3;
8-
delete -++temp ** 3;
9-
delete -temp++ ** 3;
10-
delete -temp-- ** 3;
11-
12-
delete --temp ** 3 ** 1;
13-
delete ++temp ** 3 ** 1;
14-
delete temp-- ** 3 ** 1;
15-
delete temp++ ** 3 ** 1;
16-
delete -++temp ** 3 ** 1;
17-
delete -temp++ ** 3 ** 1;
18-
delete -temp-- ** 3 ** 1;;
19-
20-
<number>--temp ** 3;
21-
<number>++temp ** 3;
22-
<number>temp-- ** 3;
23-
<number>temp++ ** 3;
24-
<number>-++temp ** 3;
25-
<number>-temp++ ** 3;
26-
<number>-temp-- ** 3;
27-
28-
<number>--temp ** 3 ** 1;
29-
<number>++temp ** 3 ** 1;
30-
<number>temp-- ** 3 ** 1;
31-
<number>temp++ ** 3 ** 1;
32-
<number>-++temp ** 3 ** 1;
33-
<number>-temp++ ** 3 ** 1;
34-
<number>-temp-- ** 3 ** 1;
35-
36-
typeof --temp ** 3;
37-
typeof temp-- ** 3;
38-
typeof 3 ** 4;
39-
typeof temp++ ** 4;
40-
typeof temp-- ** 4;
41-
typeof -3 ** 4;
42-
typeof -++temp ** 4;
43-
typeof -temp++ ** 4;
44-
typeof -temp-- ** 4;
45-
46-
typeof --temp ** 3 ** 1;
47-
typeof temp-- ** 3 ** 1;
48-
typeof 3 ** 4 ** 1;
49-
typeof temp++ ** 4 ** 1;
50-
typeof temp-- ** 4 ** 1;
51-
typeof -3 ** 4 ** 1;
52-
typeof -++temp ** 4 ** 1;
53-
typeof -temp++ ** 4 ** 1;
54-
typeof -temp-- ** 4 ** 1;
55-
56-
void --temp ** 3;
57-
void temp-- ** 3;
58-
void 3 ** 4;
59-
void temp++ ** 4;
60-
void temp-- ** 4;
61-
void -3 ** 4;
62-
void -++temp ** 4;
63-
void -temp++ ** 4;
64-
void -temp-- ** 4;
65-
66-
void --temp ** 3 ** 1;
67-
void temp-- ** 3 ** 1;
68-
void 3 ** 4 ** 1;
69-
void temp++ ** 4 ** 1;
70-
void temp-- ** 4 ** 1;
71-
void -3 ** 4 ** 1;
72-
void -++temp ** 4 ** 1;
73-
void -temp++ ** 4 ** 1;
74-
void -temp-- ** 4 ** 1;
75-
76-
~ --temp ** 3;
77-
~ temp-- ** 3;
78-
~ 3 ** 4;
79-
~ temp++ ** 4;
80-
~ temp-- ** 4;
81-
~ -3 ** 4;
82-
~ -++temp ** 4;
83-
~ -temp++ ** 4;
84-
~ -temp-- ** 4;
85-
86-
~ --temp ** 3 ** 1;
87-
~ temp-- ** 3 ** 1;
88-
~ 3 ** 4 ** 1;
89-
~ temp++ ** 4 ** 1;
90-
~ temp-- ** 4 ** 1;
91-
~ -3 ** 4 ** 1;
92-
~ -++temp ** 4 ** 1;
93-
~ -temp++ ** 4 ** 1;
94-
~ -temp-- ** 4 ** 1;
95-
96-
! --temp ** 3;
97-
! temp-- ** 3;
98-
! 3 ** 4;
99-
! temp++ ** 4;
100-
! temp-- ** 4;
101-
! -3 ** 4;
102-
! -++temp ** 4;
103-
! -temp++ ** 4;
104-
! -temp-- ** 4;
105-
106-
! --temp ** 3 ** 1;
107-
! temp-- ** 3 ** 1;
108-
! 3 ** 4 ** 1;
109-
! temp++ ** 4 ** 1;
110-
! temp-- ** 4 ** 1;
111-
! -3 ** 4 ** 1;
112-
! -++temp ** 4 ** 1;
113-
! -temp++ ** 4 ** 1;
114-
! -temp-- ** 4 ** 1;
1+
// @target:es5
2+
3+
var temp = 10;
4+
5+
(-++temp) ** 3;
6+
(+--temp) ** 3;
7+
(-temp++) ** 3;
8+
(+temp--) ** 3;
9+
(-(1 ** ++temp)) ** 3;
10+
(-(1 ** --temp)) ** 3;
11+
(-(1 ** temp++)) ** 3;
12+
(-(1 ** temp--)) ** 3;
13+
14+
(-3) ** temp++;
15+
(-3) ** temp--;
16+
(-3) ** ++temp;
17+
(-3) ** --temp;
18+
(+3) ** temp++;
19+
(+3) ** temp--;
20+
(+3) ** ++temp;
21+
(+3) ** --temp;
22+
(-3) ** temp++ ** 2;
23+
(-3) ** temp-- ** 2;
24+
(-3) ** ++temp ** 2;
25+
(-3) ** --temp ** 2;
26+
(+3) ** temp++ ** 2;
27+
(+3) ** temp-- ** 2;
28+
(+3) ** ++temp ** 2;
29+
(+3) ** --temp ** 2;
30+
31+
3 ** -temp++;
32+
3 ** -temp--;
33+
3 ** -++temp;
34+
3 ** +--temp;
35+
3 ** (-temp++) ** 2;
36+
3 ** (-temp--) ** 2;
37+
3 ** (+temp++) ** 2;
38+
3 ** (+temp--) ** 2;
39+
3 ** (-++temp) ** 2;
40+
3 ** (+--temp) ** 2;

0 commit comments

Comments
 (0)