Skip to content

Commit a2dabce

Browse files
committed
simplify tests
1 parent f6c010a commit a2dabce

File tree

25 files changed

+561
-160
lines changed

25 files changed

+561
-160
lines changed

tests/baselines/reference/initializationOrdering2(target=es2021).js renamed to tests/baselines/reference/initializationOrdering1(target=es2021,usedefineforclassfields=false).js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering2.ts] ////
1+
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering1.ts] ////
22

3-
//// [initializationOrdering2.ts]
3+
//// [initializationOrdering1.ts]
44
class Helper {
55
create(): boolean {
66
return true
@@ -17,7 +17,7 @@ export class Broken {
1717

1818
new Broken(new Helper)
1919

20-
//// [initializationOrdering2.js]
20+
//// [initializationOrdering1.js]
2121
class Helper {
2222
create() {
2323
return true;
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering1.ts] ////
2+
3+
=== initializationOrdering1.ts ===
4+
class Helper {
5+
>Helper : Symbol(Helper, Decl(initializationOrdering1.ts, 0, 0))
6+
7+
create(): boolean {
8+
>create : Symbol(Helper.create, Decl(initializationOrdering1.ts, 0, 14))
9+
10+
return true
11+
}
12+
}
13+
14+
export class Broken {
15+
>Broken : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
16+
17+
constructor(readonly facade: Helper) {
18+
>facade : Symbol(Broken.facade, Decl(initializationOrdering1.ts, 7, 16))
19+
>Helper : Symbol(Helper, Decl(initializationOrdering1.ts, 0, 0))
20+
21+
console.log(this.bug)
22+
>console.log : Symbol(Console.log, Decl(lib.dom.d.ts, --, --))
23+
>console : Symbol(console, Decl(lib.dom.d.ts, --, --))
24+
>log : Symbol(Console.log, Decl(lib.dom.d.ts, --, --))
25+
>this.bug : Symbol(Broken.bug, Decl(initializationOrdering1.ts, 9, 5))
26+
>this : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
27+
>bug : Symbol(Broken.bug, Decl(initializationOrdering1.ts, 9, 5))
28+
}
29+
bug = this.facade.create()
30+
>bug : Symbol(Broken.bug, Decl(initializationOrdering1.ts, 9, 5))
31+
>this.facade.create : Symbol(Helper.create, Decl(initializationOrdering1.ts, 0, 14))
32+
>this.facade : Symbol(Broken.facade, Decl(initializationOrdering1.ts, 7, 16))
33+
>this : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
34+
>facade : Symbol(Broken.facade, Decl(initializationOrdering1.ts, 7, 16))
35+
>create : Symbol(Helper.create, Decl(initializationOrdering1.ts, 0, 14))
36+
37+
}
38+
39+
new Broken(new Helper)
40+
>Broken : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
41+
>Helper : Symbol(Helper, Decl(initializationOrdering1.ts, 0, 0))
42+

tests/baselines/reference/initializationOrdering2(target=esnext).types renamed to tests/baselines/reference/initializationOrdering1(target=es2021,usedefineforclassfields=false).types

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering2.ts] ////
1+
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering1.ts] ////
22

3-
=== initializationOrdering2.ts ===
3+
=== initializationOrdering1.ts ===
44
class Helper {
55
>Helper : Helper
66

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering1.ts] ////
2+
3+
//// [initializationOrdering1.ts]
4+
class Helper {
5+
create(): boolean {
6+
return true
7+
}
8+
}
9+
10+
export class Broken {
11+
constructor(readonly facade: Helper) {
12+
console.log(this.bug)
13+
}
14+
bug = this.facade.create()
15+
16+
}
17+
18+
new Broken(new Helper)
19+
20+
//// [initializationOrdering1.js]
21+
class Helper {
22+
create() {
23+
return true;
24+
}
25+
}
26+
export class Broken {
27+
constructor(facade) {
28+
Object.defineProperty(this, "facade", {
29+
enumerable: true,
30+
configurable: true,
31+
writable: true,
32+
value: facade
33+
});
34+
Object.defineProperty(this, "bug", {
35+
enumerable: true,
36+
configurable: true,
37+
writable: true,
38+
value: this.facade.create()
39+
});
40+
console.log(this.bug);
41+
}
42+
}
43+
new Broken(new Helper);
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering1.ts] ////
2+
3+
=== initializationOrdering1.ts ===
4+
class Helper {
5+
>Helper : Symbol(Helper, Decl(initializationOrdering1.ts, 0, 0))
6+
7+
create(): boolean {
8+
>create : Symbol(Helper.create, Decl(initializationOrdering1.ts, 0, 14))
9+
10+
return true
11+
}
12+
}
13+
14+
export class Broken {
15+
>Broken : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
16+
17+
constructor(readonly facade: Helper) {
18+
>facade : Symbol(Broken.facade, Decl(initializationOrdering1.ts, 7, 16))
19+
>Helper : Symbol(Helper, Decl(initializationOrdering1.ts, 0, 0))
20+
21+
console.log(this.bug)
22+
>console.log : Symbol(Console.log, Decl(lib.dom.d.ts, --, --))
23+
>console : Symbol(console, Decl(lib.dom.d.ts, --, --))
24+
>log : Symbol(Console.log, Decl(lib.dom.d.ts, --, --))
25+
>this.bug : Symbol(Broken.bug, Decl(initializationOrdering1.ts, 9, 5))
26+
>this : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
27+
>bug : Symbol(Broken.bug, Decl(initializationOrdering1.ts, 9, 5))
28+
}
29+
bug = this.facade.create()
30+
>bug : Symbol(Broken.bug, Decl(initializationOrdering1.ts, 9, 5))
31+
>this.facade.create : Symbol(Helper.create, Decl(initializationOrdering1.ts, 0, 14))
32+
>this.facade : Symbol(Broken.facade, Decl(initializationOrdering1.ts, 7, 16))
33+
>this : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
34+
>facade : Symbol(Broken.facade, Decl(initializationOrdering1.ts, 7, 16))
35+
>create : Symbol(Helper.create, Decl(initializationOrdering1.ts, 0, 14))
36+
37+
}
38+
39+
new Broken(new Helper)
40+
>Broken : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
41+
>Helper : Symbol(Helper, Decl(initializationOrdering1.ts, 0, 0))
42+

tests/baselines/reference/initializationOrdering2(target=es2022).types renamed to tests/baselines/reference/initializationOrdering1(target=es2021,usedefineforclassfields=true).types

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering2.ts] ////
1+
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering1.ts] ////
22

3-
=== initializationOrdering2.ts ===
3+
=== initializationOrdering1.ts ===
44
class Helper {
55
>Helper : Helper
66

tests/baselines/reference/initializationOrdering2(target=esnext).js renamed to tests/baselines/reference/initializationOrdering1(target=es2022,usedefineforclassfields=false).js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering2.ts] ////
1+
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering1.ts] ////
22

3-
//// [initializationOrdering2.ts]
3+
//// [initializationOrdering1.ts]
44
class Helper {
55
create(): boolean {
66
return true
@@ -17,7 +17,7 @@ export class Broken {
1717

1818
new Broken(new Helper)
1919

20-
//// [initializationOrdering2.js]
20+
//// [initializationOrdering1.js]
2121
class Helper {
2222
create() {
2323
return true;
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering1.ts] ////
2+
3+
=== initializationOrdering1.ts ===
4+
class Helper {
5+
>Helper : Symbol(Helper, Decl(initializationOrdering1.ts, 0, 0))
6+
7+
create(): boolean {
8+
>create : Symbol(Helper.create, Decl(initializationOrdering1.ts, 0, 14))
9+
10+
return true
11+
}
12+
}
13+
14+
export class Broken {
15+
>Broken : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
16+
17+
constructor(readonly facade: Helper) {
18+
>facade : Symbol(Broken.facade, Decl(initializationOrdering1.ts, 7, 16))
19+
>Helper : Symbol(Helper, Decl(initializationOrdering1.ts, 0, 0))
20+
21+
console.log(this.bug)
22+
>console.log : Symbol(Console.log, Decl(lib.dom.d.ts, --, --))
23+
>console : Symbol(console, Decl(lib.dom.d.ts, --, --))
24+
>log : Symbol(Console.log, Decl(lib.dom.d.ts, --, --))
25+
>this.bug : Symbol(Broken.bug, Decl(initializationOrdering1.ts, 9, 5))
26+
>this : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
27+
>bug : Symbol(Broken.bug, Decl(initializationOrdering1.ts, 9, 5))
28+
}
29+
bug = this.facade.create()
30+
>bug : Symbol(Broken.bug, Decl(initializationOrdering1.ts, 9, 5))
31+
>this.facade.create : Symbol(Helper.create, Decl(initializationOrdering1.ts, 0, 14))
32+
>this.facade : Symbol(Broken.facade, Decl(initializationOrdering1.ts, 7, 16))
33+
>this : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
34+
>facade : Symbol(Broken.facade, Decl(initializationOrdering1.ts, 7, 16))
35+
>create : Symbol(Helper.create, Decl(initializationOrdering1.ts, 0, 14))
36+
37+
}
38+
39+
new Broken(new Helper)
40+
>Broken : Symbol(Broken, Decl(initializationOrdering1.ts, 4, 1))
41+
>Helper : Symbol(Helper, Decl(initializationOrdering1.ts, 0, 0))
42+

tests/baselines/reference/initializationOrdering2(target=es2021).types renamed to tests/baselines/reference/initializationOrdering1(target=es2022,usedefineforclassfields=false).types

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering2.ts] ////
1+
//// [tests/cases/conformance/classes/propertyMemberDeclarations/initializationOrdering1.ts] ////
22

3-
=== initializationOrdering2.ts ===
3+
=== initializationOrdering1.ts ===
44
class Helper {
55
>Helper : Helper
66

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
initializationOrdering1.ts(11,16): error TS2729: Property 'facade' is used before its initialization.
2+
3+
4+
==== initializationOrdering1.ts (1 errors) ====
5+
class Helper {
6+
create(): boolean {
7+
return true
8+
}
9+
}
10+
11+
export class Broken {
12+
constructor(readonly facade: Helper) {
13+
console.log(this.bug)
14+
}
15+
bug = this.facade.create()
16+
~~~~~~
17+
!!! error TS2729: Property 'facade' is used before its initialization.
18+
!!! related TS2728 initializationOrdering1.ts:8:17: 'facade' is declared here.
19+
20+
}
21+
22+
new Broken(new Helper)

0 commit comments

Comments
 (0)