58 lines
1.9 KiB
Plaintext
58 lines
1.9 KiB
Plaintext
=== tests/cases/conformance/dynamicImport/importCallExpressionSpecifierNotStringTypeError.ts ===
|
|
declare function getSpecifier(): boolean;
|
|
>getSpecifier : () => boolean
|
|
|
|
declare var whatToLoad: boolean;
|
|
>whatToLoad : boolean
|
|
|
|
// Error specifier is not assignable to string
|
|
import(getSpecifier());
|
|
>import(getSpecifier()) : Promise<any>
|
|
>getSpecifier() : boolean
|
|
>getSpecifier : () => boolean
|
|
|
|
var p1 = import(getSpecifier());
|
|
>p1 : Promise<any>
|
|
>import(getSpecifier()) : Promise<any>
|
|
>getSpecifier() : boolean
|
|
>getSpecifier : () => boolean
|
|
|
|
const p2 = import(whatToLoad ? getSpecifier() : "defaulPath")
|
|
>p2 : Promise<any>
|
|
>import(whatToLoad ? getSpecifier() : "defaulPath") : Promise<any>
|
|
>whatToLoad ? getSpecifier() : "defaulPath" : boolean | "defaulPath"
|
|
>whatToLoad : boolean
|
|
>getSpecifier() : boolean
|
|
>getSpecifier : () => boolean
|
|
>"defaulPath" : "defaulPath"
|
|
|
|
p1.then(zero => {
|
|
>p1.then(zero => { return zero.foo(); // ok, zero is any}) : Promise<any>
|
|
>p1.then : <TResult1 = any, TResult2 = never>(onfulfilled?: (value: any) => TResult1 | PromiseLike<TResult1>, onrejected?: (reason: any) => TResult2 | PromiseLike<TResult2>) => Promise<TResult1 | TResult2>
|
|
>p1 : Promise<any>
|
|
>then : <TResult1 = any, TResult2 = never>(onfulfilled?: (value: any) => TResult1 | PromiseLike<TResult1>, onrejected?: (reason: any) => TResult2 | PromiseLike<TResult2>) => Promise<TResult1 | TResult2>
|
|
>zero => { return zero.foo(); // ok, zero is any} : (zero: any) => any
|
|
>zero : any
|
|
|
|
return zero.foo(); // ok, zero is any
|
|
>zero.foo() : any
|
|
>zero.foo : any
|
|
>zero : any
|
|
>foo : any
|
|
|
|
});
|
|
|
|
var p3 = import(["path1", "path2"]);
|
|
>p3 : Promise<any>
|
|
>import(["path1", "path2"]) : Promise<any>
|
|
>["path1", "path2"] : string[]
|
|
>"path1" : "path1"
|
|
>"path2" : "path2"
|
|
|
|
var p4 = import(()=>"PathToModule");
|
|
>p4 : Promise<any>
|
|
>import(()=>"PathToModule") : Promise<any>
|
|
>()=>"PathToModule" : () => string
|
|
>"PathToModule" : "PathToModule"
|
|
|