Skip to content

Commit b9a3d26

Browse files
committed
test cases for accessibility modifiers
1 parent bd52998 commit b9a3d26

11 files changed

+96
-22
lines changed

tests/baselines/reference/privateNameContructorReserved.errors.txt renamed to tests/baselines/reference/privateNameConstructorReserved.errors.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
tests/cases/conformance/classes/members/privateNames/privateNameContructorReserved.ts(1,7): error TS2300: Duplicate identifier 'A'.
2-
tests/cases/conformance/classes/members/privateNames/privateNameContructorReserved.ts(2,5): error TS18006: #constructor is a reserved word.
3-
tests/cases/conformance/classes/members/privateNames/privateNameContructorReserved.ts(5,7): error TS2300: Duplicate identifier 'A'.
4-
tests/cases/conformance/classes/members/privateNames/privateNameContructorReserved.ts(6,5): error TS18006: #constructor is a reserved word.
1+
tests/cases/conformance/classes/members/privateNames/privateNameConstructorReserved.ts(1,7): error TS2300: Duplicate identifier 'A'.
2+
tests/cases/conformance/classes/members/privateNames/privateNameConstructorReserved.ts(2,5): error TS18006: #constructor is a reserved word.
3+
tests/cases/conformance/classes/members/privateNames/privateNameConstructorReserved.ts(5,7): error TS2300: Duplicate identifier 'A'.
4+
tests/cases/conformance/classes/members/privateNames/privateNameConstructorReserved.ts(6,5): error TS18006: #constructor is a reserved word.
55

66

7-
==== tests/cases/conformance/classes/members/privateNames/privateNameContructorReserved.ts (4 errors) ====
7+
==== tests/cases/conformance/classes/members/privateNames/privateNameConstructorReserved.ts (4 errors) ====
88
class A {
99
~
1010
!!! error TS2300: Duplicate identifier 'A'.

tests/baselines/reference/privateNameContructorReserved.js renamed to tests/baselines/reference/privateNameConstructorReserved.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
//// [privateNameContructorReserved.ts]
1+
//// [privateNameConstructorReserved.ts]
22
class A {
33
#constructor() {} // Error: `#constructor` is a reserved word.
44
}
@@ -7,7 +7,7 @@ class A {
77
#constructor = 5 // Error: `#constructor` is a reserved word.
88
}
99

10-
//// [privateNameContructorReserved.js]
10+
//// [privateNameConstructorReserved.js]
1111
var A = /** @class */ (function () {
1212
function A() {
1313
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
=== tests/cases/conformance/classes/members/privateNames/privateNameConstructorReserved.ts ===
2+
class A {
3+
>A : Symbol(A, Decl(privateNameConstructorReserved.ts, 0, 0))
4+
5+
#constructor() {} // Error: `#constructor` is a reserved word.
6+
>#constructor : Symbol(A[#constructor], Decl(privateNameConstructorReserved.ts, 0, 9))
7+
}
8+
9+
class A {
10+
>A : Symbol(A, Decl(privateNameConstructorReserved.ts, 2, 1))
11+
12+
#constructor = 5 // Error: `#constructor` is a reserved word.
13+
>#constructor : Symbol(A[#constructor], Decl(privateNameConstructorReserved.ts, 4, 9))
14+
}

tests/baselines/reference/privateNameContructorReserved.types renamed to tests/baselines/reference/privateNameConstructorReserved.types

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
=== tests/cases/conformance/classes/members/privateNames/privateNameContructorReserved.ts ===
1+
=== tests/cases/conformance/classes/members/privateNames/privateNameConstructorReserved.ts ===
22
class A {
33
>A : A
44

tests/baselines/reference/privateNameContructorReserved.symbols

Lines changed: 0 additions & 14 deletions
This file was deleted.
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
tests/cases/conformance/classes/members/privateNames/privateNamesNoAccessibilityModifiers.ts(2,12): error TS18004: Accessibility modifiers cannot be used with private names.
2+
tests/cases/conformance/classes/members/privateNames/privateNamesNoAccessibilityModifiers.ts(3,13): error TS18004: Accessibility modifiers cannot be used with private names.
3+
tests/cases/conformance/classes/members/privateNames/privateNamesNoAccessibilityModifiers.ts(4,15): error TS18004: Accessibility modifiers cannot be used with private names.
4+
5+
6+
==== tests/cases/conformance/classes/members/privateNames/privateNamesNoAccessibilityModifiers.ts (3 errors) ====
7+
class A {
8+
public #foo; // Error
9+
~~~~
10+
!!! error TS18004: Accessibility modifiers cannot be used with private names.
11+
private #bar; // Error
12+
~~~~
13+
!!! error TS18004: Accessibility modifiers cannot be used with private names.
14+
protected #baz; // Error
15+
~~~~
16+
!!! error TS18004: Accessibility modifiers cannot be used with private names.
17+
readonly #qux; // OK
18+
}
19+
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
//// [privateNamesNoAccessibilityModifiers.ts]
2+
class A {
3+
public #foo; // Error
4+
private #bar; // Error
5+
protected #baz; // Error
6+
readonly #qux; // OK
7+
}
8+
9+
10+
//// [privateNamesNoAccessibilityModifiers.js]
11+
var A = /** @class */ (function () {
12+
function A() {
13+
}
14+
return A;
15+
}());
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
=== tests/cases/conformance/classes/members/privateNames/privateNamesNoAccessibilityModifiers.ts ===
2+
class A {
3+
>A : Symbol(A, Decl(privateNamesNoAccessibilityModifiers.ts, 0, 0))
4+
5+
public #foo; // Error
6+
>#foo : Symbol(A[#foo], Decl(privateNamesNoAccessibilityModifiers.ts, 0, 9))
7+
8+
private #bar; // Error
9+
>#bar : Symbol(A[#bar], Decl(privateNamesNoAccessibilityModifiers.ts, 1, 16))
10+
11+
protected #baz; // Error
12+
>#baz : Symbol(A[#baz], Decl(privateNamesNoAccessibilityModifiers.ts, 2, 17))
13+
14+
readonly #qux; // OK
15+
>#qux : Symbol(A[#qux], Decl(privateNamesNoAccessibilityModifiers.ts, 3, 19))
16+
}
17+
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
=== tests/cases/conformance/classes/members/privateNames/privateNamesNoAccessibilityModifiers.ts ===
2+
class A {
3+
>A : A
4+
5+
public #foo; // Error
6+
>#foo : any
7+
8+
private #bar; // Error
9+
>#bar : any
10+
11+
protected #baz; // Error
12+
>#baz : any
13+
14+
readonly #qux; // OK
15+
>#qux : any
16+
}
17+
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
class A {
2+
public #foo; // Error
3+
private #bar; // Error
4+
protected #baz; // Error
5+
readonly #qux; // OK
6+
}

0 commit comments

Comments
 (0)