Add test when module resolution includes .ts file from node_modules

This commit is contained in:
Sheetal Nandi 2019-05-01 10:07:00 -07:00
parent 9509a54e66
commit 3df65a7a85
5 changed files with 80 additions and 0 deletions

View file

@ -0,0 +1,18 @@
error TS6307: File '/foo/node_modules/myModule/index.ts' is not in project file list. Projects must list all files or use an 'include' pattern.
!!! error TS6307: File '/foo/node_modules/myModule/index.ts' is not in project file list. Projects must list all files or use an 'include' pattern.
==== /foo/tsconfig.json (0 errors) ====
{
"compilerOptions": { "composite": true },
"exclude": [ "node_modules" ]
}
==== /foo/test.ts (0 errors) ====
import myModule = require("myModule");
new myModule.c();
==== /foo/node_modules/myModule/index.ts (0 errors) ====
export class c { }

View file

@ -0,0 +1,20 @@
//// [tests/cases/compiler/compositeWithNodeModulesSourceFile.ts] ////
//// [index.ts]
export class c { }
//// [test.ts]
import myModule = require("myModule");
new myModule.c();
//// [test.js]
"use strict";
exports.__esModule = true;
var myModule = require("myModule");
new myModule.c();
//// [test.d.ts]
export {};

View file

@ -0,0 +1,14 @@
=== /foo/test.ts ===
import myModule = require("myModule");
>myModule : Symbol(myModule, Decl(test.ts, 0, 0))
new myModule.c();
>myModule.c : Symbol(myModule.c, Decl(index.ts, 0, 0))
>myModule : Symbol(myModule, Decl(test.ts, 0, 0))
>c : Symbol(myModule.c, Decl(index.ts, 0, 0))
=== /foo/node_modules/myModule/index.ts ===
export class c { }
>c : Symbol(c, Decl(index.ts, 0, 0))

View file

@ -0,0 +1,15 @@
=== /foo/test.ts ===
import myModule = require("myModule");
>myModule : typeof myModule
new myModule.c();
>new myModule.c() : myModule.c
>myModule.c : typeof myModule.c
>myModule : typeof myModule
>c : typeof myModule.c
=== /foo/node_modules/myModule/index.ts ===
export class c { }
>c : c

View file

@ -0,0 +1,13 @@
// @filename: /foo/tsconfig.json
{
"compilerOptions": { "composite": true },
"exclude": [ "node_modules" ]
}
// @filename: /foo/node_modules/myModule/index.ts
export class c { }
// @filename: /foo/test.ts
import myModule = require("myModule");
new myModule.c();