Test that number is assignable to enum in a union

This commit is contained in:
Nathan Shively-Sanders 2016-09-08 11:21:40 -07:00
parent dae4ec63be
commit 495ea0d497
4 changed files with 45 additions and 0 deletions

View File

@ -0,0 +1,14 @@
//// [numberAssignableToEnumInsideUnion.ts]
enum E { A, B }
let n: number;
let z: E | boolean = n;
//// [numberAssignableToEnumInsideUnion.js]
var E;
(function (E) {
E[E["A"] = 0] = "A";
E[E["B"] = 1] = "B";
})(E || (E = {}));
var n;
var z = n;

View File

@ -0,0 +1,14 @@
=== tests/cases/compiler/numberAssignableToEnumInsideUnion.ts ===
enum E { A, B }
>E : Symbol(E, Decl(numberAssignableToEnumInsideUnion.ts, 0, 0))
>A : Symbol(E.A, Decl(numberAssignableToEnumInsideUnion.ts, 0, 8))
>B : Symbol(E.B, Decl(numberAssignableToEnumInsideUnion.ts, 0, 11))
let n: number;
>n : Symbol(n, Decl(numberAssignableToEnumInsideUnion.ts, 1, 3))
let z: E | boolean = n;
>z : Symbol(z, Decl(numberAssignableToEnumInsideUnion.ts, 2, 3))
>E : Symbol(E, Decl(numberAssignableToEnumInsideUnion.ts, 0, 0))
>n : Symbol(n, Decl(numberAssignableToEnumInsideUnion.ts, 1, 3))

View File

@ -0,0 +1,14 @@
=== tests/cases/compiler/numberAssignableToEnumInsideUnion.ts ===
enum E { A, B }
>E : E
>A : E
>B : E
let n: number;
>n : number
let z: E | boolean = n;
>z : boolean | E
>E : E
>n : number

View File

@ -0,0 +1,3 @@
enum E { A, B }
let n: number;
let z: E | boolean = n;