2019-08-03 00:58:10 +02:00
|
|
|
|
/// <reference path="fourslash.ts" />
|
|
|
|
|
|
|
|
|
|
// @Module: commonjs
|
|
|
|
|
// @EsModuleInterop: true
|
|
|
|
|
|
|
|
|
|
// @Filename: /foo.d.ts
|
|
|
|
|
////declare module "bar" {
|
|
|
|
|
//// const bar: number;
|
|
|
|
|
//// export = bar;
|
|
|
|
|
////}
|
|
|
|
|
////declare module "foo" {
|
|
|
|
|
//// const foo: number;
|
|
|
|
|
//// export = foo;
|
|
|
|
|
////}
|
|
|
|
|
////declare module "es" {
|
|
|
|
|
//// const es = 0;
|
|
|
|
|
//// export default es;
|
|
|
|
|
////}
|
|
|
|
|
|
|
|
|
|
// @Filename: /a.ts
|
2020-01-28 20:05:04 +01:00
|
|
|
|
////import bar = require("bar");
|
2019-08-03 00:58:10 +02:00
|
|
|
|
////
|
|
|
|
|
////foo
|
|
|
|
|
|
|
|
|
|
// @Filename: /b.ts
|
|
|
|
|
////foo
|
|
|
|
|
|
|
|
|
|
// @Filename: /c.ts
|
|
|
|
|
////import es from "es";
|
2020-01-28 20:05:04 +01:00
|
|
|
|
////import bar = require("bar");
|
2019-08-03 00:58:10 +02:00
|
|
|
|
////
|
|
|
|
|
////foo
|
|
|
|
|
|
|
|
|
|
// 1. Should match existing imports of 'export ='
|
|
|
|
|
goTo.file('/a.ts');
|
2020-01-28 20:05:04 +01:00
|
|
|
|
verify.importFixAtPosition([`import bar = require("bar");
|
|
|
|
|
import foo = require("foo");
|
2019-08-03 00:58:10 +02:00
|
|
|
|
|
|
|
|
|
foo`]);
|
|
|
|
|
|
2020-01-28 20:05:04 +01:00
|
|
|
|
// 2. Should default to default import
|
2019-08-03 00:58:10 +02:00
|
|
|
|
goTo.file('/b.ts');
|
2020-01-28 20:05:04 +01:00
|
|
|
|
verify.importFixAtPosition([`import foo from "foo";
|
2019-08-03 00:58:10 +02:00
|
|
|
|
|
|
|
|
|
foo`]);
|
|
|
|
|
|
|
|
|
|
// 3. Importing an 'export default' doesn’t count toward the usage heursitic
|
|
|
|
|
goTo.file('/c.ts');
|
|
|
|
|
verify.importFixAtPosition([`import es from "es";
|
2020-01-28 20:05:04 +01:00
|
|
|
|
import bar = require("bar");
|
2019-08-03 00:58:10 +02:00
|
|
|
|
import foo = require("foo");
|
|
|
|
|
|
|
|
|
|
foo`]);
|