diff --git a/tests/cases/fourslash/autoImportModuleNone1.ts b/tests/cases/fourslash/autoImportModuleNone1.ts new file mode 100644 index 0000000000000..2826ad9011e9f --- /dev/null +++ b/tests/cases/fourslash/autoImportModuleNone1.ts @@ -0,0 +1,26 @@ +/// + +// @module: none +// @moduleResolution: node10 +// @target: es5 + +// @Filename: /node_modules/dep/index.d.ts +////export const x: number; + +// @Filename: /index.ts +//// x/**/ + +verify.completions({ + marker: "", + excludes: ["x"], + preferences: { + includeCompletionsForModuleExports: true, + }, +}); + +edit.replaceLine(0, "import { x } from 'dep'; x;"); +verify.getSemanticDiagnostics([{ + range: { fileName: "/index.ts", pos: 0, end: "import { x } from 'dep';".length }, + code: ts.Diagnostics.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none.code, + message: ts.Diagnostics.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none.message +}]); diff --git a/tests/cases/fourslash/autoImportModuleNone2.ts b/tests/cases/fourslash/autoImportModuleNone2.ts new file mode 100644 index 0000000000000..72cbb5167e5e1 --- /dev/null +++ b/tests/cases/fourslash/autoImportModuleNone2.ts @@ -0,0 +1,29 @@ +/// + +// @module: none +// @moduleResolution: node10 +// @target: es2015 + +// @Filename: /node_modules/dep/index.d.ts +////export const x: number; + +// @Filename: /index.ts +//// x/**/ + +verify.completions({ + marker: "", + includes: [{ + name: "x", + source: "dep", + sourceDisplay: "dep", + hasAction: true, + sortText: completion.SortText.AutoImportSuggestions + }], + preferences: { + includeCompletionsForModuleExports: true, + allowIncompleteCompletions: true, + }, +}); + +edit.replaceLine(0, "import { x } from 'dep'; x;"); +verify.getSemanticDiagnostics([]);