Adding tests

This commit is contained in:
Anders Hejlsberg
2015-04-21 11:20:43 -07:00
parent ed9dceb501
commit 8182b7132e
6 changed files with 251 additions and 0 deletions

View File

@@ -0,0 +1,39 @@
//// [circularTypeAliasForUnionWithClass.ts]
var v0: T0;
type T0 = string | I0;
class I0 {
x: T0;
}
var v3: T3;
type T3 = string | I3;
class I3 {
[x: number]: T3;
}
var v4: T4;
type T4 = string | I4;
class I4 {
[x: string]: T4;
}
//// [circularTypeAliasForUnionWithClass.js]
var v0;
var I0 = (function () {
function I0() {
}
return I0;
})();
var v3;
var I3 = (function () {
function I3() {
}
return I3;
})();
var v4;
var I4 = (function () {
function I4() {
}
return I4;
})();

View File

@@ -0,0 +1,49 @@
=== tests/cases/conformance/types/typeAliases/circularTypeAliasForUnionWithClass.ts ===
var v0: T0;
>v0 : string | I0
>T0 : string | I0
type T0 = string | I0;
>T0 : string | I0
>I0 : I0
class I0 {
>I0 : I0
x: T0;
>x : string | I0
>T0 : string | I0
}
var v3: T3;
>v3 : string | I3
>T3 : string | I3
type T3 = string | I3;
>T3 : string | I3
>I3 : I3
class I3 {
>I3 : I3
[x: number]: T3;
>x : number
>T3 : string | I3
}
var v4: T4;
>v4 : string | I4
>T4 : string | I4
type T4 = string | I4;
>T4 : string | I4
>I4 : I4
class I4 {
>I4 : I4
[x: string]: T4;
>x : string
>T4 : string | I4
}

View File

@@ -0,0 +1,38 @@
//// [circularTypeAliasForUnionWithInterface.ts]
var v0: T0;
type T0 = string | I0;
interface I0 {
x: T0;
}
var v1: T1;
type T1 = string | I1;
interface I1 {
(): T1;
}
var v2: T2;
type T2 = string | I2;
interface I2 {
new (): T2;
}
var v3: T3;
type T3 = string | I3;
interface I3 {
[x: number]: T3;
}
var v4: T4;
type T4 = string | I4;
interface I4 {
[x: string]: T4;
}
//// [circularTypeAliasForUnionWithInterface.js]
var v0;
var v1;
var v2;
var v3;
var v4;

View File

@@ -0,0 +1,79 @@
=== tests/cases/conformance/types/typeAliases/circularTypeAliasForUnionWithInterface.ts ===
var v0: T0;
>v0 : string | I0
>T0 : string | I0
type T0 = string | I0;
>T0 : string | I0
>I0 : I0
interface I0 {
>I0 : I0
x: T0;
>x : string | I0
>T0 : string | I0
}
var v1: T1;
>v1 : string | I1
>T1 : string | I1
type T1 = string | I1;
>T1 : string | I1
>I1 : I1
interface I1 {
>I1 : I1
(): T1;
>T1 : string | I1
}
var v2: T2;
>v2 : string | I2
>T2 : string | I2
type T2 = string | I2;
>T2 : string | I2
>I2 : I2
interface I2 {
>I2 : I2
new (): T2;
>T2 : string | I2
}
var v3: T3;
>v3 : string | I3
>T3 : string | I3
type T3 = string | I3;
>T3 : string | I3
>I3 : I3
interface I3 {
>I3 : I3
[x: number]: T3;
>x : number
>T3 : string | I3
}
var v4: T4;
>v4 : string | I4
>T4 : string | I4
type T4 = string | I4;
>T4 : string | I4
>I4 : I4
interface I4 {
>I4 : I4
[x: string]: T4;
>x : string
>T4 : string | I4
}

View File

@@ -0,0 +1,17 @@
var v0: T0;
type T0 = string | I0;
class I0 {
x: T0;
}
var v3: T3;
type T3 = string | I3;
class I3 {
[x: number]: T3;
}
var v4: T4;
type T4 = string | I4;
class I4 {
[x: string]: T4;
}

View File

@@ -0,0 +1,29 @@
var v0: T0;
type T0 = string | I0;
interface I0 {
x: T0;
}
var v1: T1;
type T1 = string | I1;
interface I1 {
(): T1;
}
var v2: T2;
type T2 = string | I2;
interface I2 {
new (): T2;
}
var v3: T3;
type T3 = string | I3;
interface I3 {
[x: number]: T3;
}
var v4: T4;
type T4 = string | I4;
interface I4 {
[x: string]: T4;
}