Expand test to ensure property access on object literal has correct behaviour

This commit is contained in:
Henry Mercer
2017-09-19 22:18:15 +01:00
parent aa4c1963e7
commit 76ef97449c
8 changed files with 73 additions and 37 deletions

View File

@@ -1,12 +0,0 @@
//// [propertyAccessOnEmptyObjectLiteral.ts]
class A { }
(<A>{}).toString();
//// [propertyAccessOnEmptyObjectLiteral.js]
var A = /** @class */ (function () {
function A() {
}
return A;
}());
({}).toString();

View File

@@ -1,9 +0,0 @@
=== tests/cases/compiler/propertyAccessOnEmptyObjectLiteral.ts ===
class A { }
>A : Symbol(A, Decl(propertyAccessOnEmptyObjectLiteral.ts, 0, 0))
(<A>{}).toString();
>(<A>{}).toString : Symbol(Object.toString, Decl(lib.d.ts, --, --))
>A : Symbol(A, Decl(propertyAccessOnEmptyObjectLiteral.ts, 0, 0))
>toString : Symbol(Object.toString, Decl(lib.d.ts, --, --))

View File

@@ -1,13 +0,0 @@
=== tests/cases/compiler/propertyAccessOnEmptyObjectLiteral.ts ===
class A { }
>A : A
(<A>{}).toString();
>(<A>{}).toString() : string
>(<A>{}).toString : () => string
>(<A>{}) : A
><A>{} : A
>A : A
>{} : {}
>toString : () => string

View File

@@ -0,0 +1,20 @@
//// [propertyAccessOnObjectLiteral.ts]
class A { }
(<A>{}).toString();
(() => {
(<A>{}).toString();
})();
//// [propertyAccessOnObjectLiteral.js]
var A = /** @class */ (function () {
function A() {
}
return A;
}());
({}).toString();
(function () {
({}).toString();
})();

View File

@@ -0,0 +1,17 @@
=== tests/cases/compiler/propertyAccessOnObjectLiteral.ts ===
class A { }
>A : Symbol(A, Decl(propertyAccessOnObjectLiteral.ts, 0, 0))
(<A>{}).toString();
>(<A>{}).toString : Symbol(Object.toString, Decl(lib.d.ts, --, --))
>A : Symbol(A, Decl(propertyAccessOnObjectLiteral.ts, 0, 0))
>toString : Symbol(Object.toString, Decl(lib.d.ts, --, --))
(() => {
(<A>{}).toString();
>(<A>{}).toString : Symbol(Object.toString, Decl(lib.d.ts, --, --))
>A : Symbol(A, Decl(propertyAccessOnObjectLiteral.ts, 0, 0))
>toString : Symbol(Object.toString, Decl(lib.d.ts, --, --))
})();

View File

@@ -0,0 +1,29 @@
=== tests/cases/compiler/propertyAccessOnObjectLiteral.ts ===
class A { }
>A : A
(<A>{}).toString();
>(<A>{}).toString() : string
>(<A>{}).toString : () => string
>(<A>{}) : A
><A>{} : A
>A : A
>{} : {}
>toString : () => string
(() => {
>(() => { (<A>{}).toString();})() : void
>(() => { (<A>{}).toString();}) : () => void
>() => { (<A>{}).toString();} : () => void
(<A>{}).toString();
>(<A>{}).toString() : string
>(<A>{}).toString : () => string
>(<A>{}) : A
><A>{} : A
>A : A
>{} : {}
>toString : () => string
})();

View File

@@ -1,3 +0,0 @@
class A { }
(<A>{}).toString();

View File

@@ -0,0 +1,7 @@
class A { }
(<A>{}).toString();
(() => {
(<A>{}).toString();
})();