mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-04-20 05:43:40 -05:00
Test:infer from related types only
This commit is contained in:
11
tests/baselines/reference/doNotInferUnrelatedTypes.js
Normal file
11
tests/baselines/reference/doNotInferUnrelatedTypes.js
Normal file
@@ -0,0 +1,11 @@
|
||||
//// [doNotInferUnrelatedTypes.ts]
|
||||
// #16709
|
||||
declare function dearray<T>(ara: ReadonlyArray<T>): T;
|
||||
type LiteralType = "foo" | "bar";
|
||||
declare var alt: Array<LiteralType>;
|
||||
|
||||
let foo: LiteralType = dearray(alt);
|
||||
|
||||
|
||||
//// [doNotInferUnrelatedTypes.js]
|
||||
var foo = dearray(alt);
|
||||
24
tests/baselines/reference/doNotInferUnrelatedTypes.symbols
Normal file
24
tests/baselines/reference/doNotInferUnrelatedTypes.symbols
Normal file
@@ -0,0 +1,24 @@
|
||||
=== tests/cases/compiler/doNotInferUnrelatedTypes.ts ===
|
||||
// #16709
|
||||
declare function dearray<T>(ara: ReadonlyArray<T>): T;
|
||||
>dearray : Symbol(dearray, Decl(doNotInferUnrelatedTypes.ts, 0, 0))
|
||||
>T : Symbol(T, Decl(doNotInferUnrelatedTypes.ts, 1, 25))
|
||||
>ara : Symbol(ara, Decl(doNotInferUnrelatedTypes.ts, 1, 28))
|
||||
>ReadonlyArray : Symbol(ReadonlyArray, Decl(lib.d.ts, --, --))
|
||||
>T : Symbol(T, Decl(doNotInferUnrelatedTypes.ts, 1, 25))
|
||||
>T : Symbol(T, Decl(doNotInferUnrelatedTypes.ts, 1, 25))
|
||||
|
||||
type LiteralType = "foo" | "bar";
|
||||
>LiteralType : Symbol(LiteralType, Decl(doNotInferUnrelatedTypes.ts, 1, 54))
|
||||
|
||||
declare var alt: Array<LiteralType>;
|
||||
>alt : Symbol(alt, Decl(doNotInferUnrelatedTypes.ts, 3, 11))
|
||||
>Array : Symbol(Array, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --))
|
||||
>LiteralType : Symbol(LiteralType, Decl(doNotInferUnrelatedTypes.ts, 1, 54))
|
||||
|
||||
let foo: LiteralType = dearray(alt);
|
||||
>foo : Symbol(foo, Decl(doNotInferUnrelatedTypes.ts, 5, 3))
|
||||
>LiteralType : Symbol(LiteralType, Decl(doNotInferUnrelatedTypes.ts, 1, 54))
|
||||
>dearray : Symbol(dearray, Decl(doNotInferUnrelatedTypes.ts, 0, 0))
|
||||
>alt : Symbol(alt, Decl(doNotInferUnrelatedTypes.ts, 3, 11))
|
||||
|
||||
25
tests/baselines/reference/doNotInferUnrelatedTypes.types
Normal file
25
tests/baselines/reference/doNotInferUnrelatedTypes.types
Normal file
@@ -0,0 +1,25 @@
|
||||
=== tests/cases/compiler/doNotInferUnrelatedTypes.ts ===
|
||||
// #16709
|
||||
declare function dearray<T>(ara: ReadonlyArray<T>): T;
|
||||
>dearray : <T>(ara: ReadonlyArray<T>) => T
|
||||
>T : T
|
||||
>ara : ReadonlyArray<T>
|
||||
>ReadonlyArray : ReadonlyArray<T>
|
||||
>T : T
|
||||
>T : T
|
||||
|
||||
type LiteralType = "foo" | "bar";
|
||||
>LiteralType : LiteralType
|
||||
|
||||
declare var alt: Array<LiteralType>;
|
||||
>alt : LiteralType[]
|
||||
>Array : T[]
|
||||
>LiteralType : LiteralType
|
||||
|
||||
let foo: LiteralType = dearray(alt);
|
||||
>foo : LiteralType
|
||||
>LiteralType : LiteralType
|
||||
>dearray(alt) : LiteralType
|
||||
>dearray : <T>(ara: ReadonlyArray<T>) => T
|
||||
>alt : LiteralType[]
|
||||
|
||||
6
tests/cases/compiler/doNotInferUnrelatedTypes.ts
Normal file
6
tests/cases/compiler/doNotInferUnrelatedTypes.ts
Normal file
@@ -0,0 +1,6 @@
|
||||
// #16709
|
||||
declare function dearray<T>(ara: ReadonlyArray<T>): T;
|
||||
type LiteralType = "foo" | "bar";
|
||||
declare var alt: Array<LiteralType>;
|
||||
|
||||
let foo: LiteralType = dearray(alt);
|
||||
Reference in New Issue
Block a user