mirror of
https://github.com/microsoft/TypeScript.git
synced 2025-11-18 17:21:48 +00:00
Added tests.
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
interface I1 {
|
||||
p1: number
|
||||
}
|
||||
|
||||
interface I2 extends I1 {
|
||||
p2: number;
|
||||
}
|
||||
|
||||
var x = { p1: 10, p2: 20 };
|
||||
var y: number | I2 = x;
|
||||
var z: I1 = x;
|
||||
|
||||
if (y === z || z === y) {
|
||||
}
|
||||
else if (y !== z || z !== y) {
|
||||
}
|
||||
else if (y == z || z == y) {
|
||||
}
|
||||
else if (y != z || z != y) {
|
||||
}
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
|
||||
var strOrNum: string | number;
|
||||
var numOrBool: number | boolean;
|
||||
var str: string;
|
||||
var num: number;
|
||||
var bool: boolean;
|
||||
|
||||
switch (strOrNum) {
|
||||
// Identical
|
||||
case strOrNum:
|
||||
break;
|
||||
|
||||
// Constituents
|
||||
case str:
|
||||
case num:
|
||||
break;
|
||||
|
||||
// Overlap in constituents
|
||||
case numOrBool:
|
||||
break;
|
||||
|
||||
// No relation
|
||||
case bool:
|
||||
break;
|
||||
}
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
interface I1 {
|
||||
p1: number
|
||||
}
|
||||
|
||||
interface I2 extends I1 {
|
||||
p2: number;
|
||||
}
|
||||
|
||||
var x = { p1: 10, p2: 20 };
|
||||
var y: number | I2 = x;
|
||||
var z: I1 = x;
|
||||
|
||||
var a = <number | I2>z;
|
||||
var b = <number>z;
|
||||
var c = <I2>z;
|
||||
var d = <I1>y;
|
||||
Reference in New Issue
Block a user