diff --git a/cli/tests/fix_tsc_file_exists.out b/cli/tests/fix_tsc_file_exists.out new file mode 100644 index 0000000000000000000000000000000000000000..ce013625030ba8dba906f756967f9e9ca394464a --- /dev/null +++ b/cli/tests/fix_tsc_file_exists.out @@ -0,0 +1 @@ +hello diff --git a/cli/tests/integration_tests.rs b/cli/tests/integration_tests.rs index 7e0e020d62e67cbc2843a1d352665a68324a77e5..4ec816c4f0916a360ea6806da465f64e2d626493 100644 --- a/cli/tests/integration_tests.rs +++ b/cli/tests/integration_tests.rs @@ -2378,6 +2378,11 @@ itest!(fix_js_imports { output: "fix_js_imports.ts.out", }); +itest!(fix_tsc_file_exists { + args: "run --quiet --reload tsc/test.js", + output: "fix_tsc_file_exists.out", +}); + itest!(es_private_fields { args: "run --quiet --reload es_private_fields.js", output: "es_private_fields.js.out", diff --git a/cli/tests/tsc/a.js b/cli/tests/tsc/a.js new file mode 100644 index 0000000000000000000000000000000000000000..5a7b3ff93ccc5742207a55e46e3a6784d8cf3e97 --- /dev/null +++ b/cli/tests/tsc/a.js @@ -0,0 +1,2 @@ +import { v4 } from "./d.ts"; +export function a() {} diff --git a/cli/tests/tsc/d.ts b/cli/tests/tsc/d.ts new file mode 100644 index 0000000000000000000000000000000000000000..3c74b8c83633a2432fdae4e53fd95a8d2e858b40 --- /dev/null +++ b/cli/tests/tsc/d.ts @@ -0,0 +1,3 @@ +export function v4() { + return "hello"; +} diff --git a/cli/tests/tsc/node_modules/b.js b/cli/tests/tsc/node_modules/b.js new file mode 100644 index 0000000000000000000000000000000000000000..19166093551fa9f8270d3c1d094c1d7ca632a766 --- /dev/null +++ b/cli/tests/tsc/node_modules/b.js @@ -0,0 +1,2 @@ +import c from "./c.js"; +export { c }; diff --git a/cli/tests/tsc/node_modules/c.js b/cli/tests/tsc/node_modules/c.js new file mode 100644 index 0000000000000000000000000000000000000000..cff71c44a07b100f0a5200f93c42b508a8a9efb4 --- /dev/null +++ b/cli/tests/tsc/node_modules/c.js @@ -0,0 +1 @@ +export default function c() {} diff --git a/cli/tests/tsc/test.js b/cli/tests/tsc/test.js new file mode 100644 index 0000000000000000000000000000000000000000..b7f46b351fb0dd02e5e5f1864de3212de64e8b1f --- /dev/null +++ b/cli/tests/tsc/test.js @@ -0,0 +1,4 @@ +import { a } from "./a.js"; +import { c } from "./node_modules/b.js"; + +console.log("hello"); diff --git a/cli/tsc/99_main_compiler.js b/cli/tsc/99_main_compiler.js index 63a5d1f5beaa0131f05e381e6abc049f548511e2..94a08e6aba1878974062f5d92d237c2435552d8c 100644 --- a/cli/tsc/99_main_compiler.js +++ b/cli/tsc/99_main_compiler.js @@ -278,8 +278,9 @@ delete Object.prototype.__proto__; /* TypeScript CompilerHost APIs */ - fileExists(_fileName) { - return notImplemented(); + fileExists(fileName) { + log(`compiler::host.fileExists("${fileName}")`); + return false; } getCanonicalFileName(fileName) { diff --git a/tools/lint.py b/tools/lint.py index e7f967140db34530d2197345fcc6d738e54ea5b8..76f51404deaf9ee0b79d13390f11cffcb38430eb 100755 --- a/tools/lint.py +++ b/tools/lint.py @@ -66,13 +66,14 @@ def eslint(): ":!:cli/tests/swc_syntax_error.ts", ":!:std/**/testdata/*", ":!:std/**/node_modules/*", + ":!:cli/bench/node*.js", ":!:cli/compilers/wasm_wrap.js", + ":!:cli/dts/**", + ":!:cli/tests/encoding/**", ":!:cli/tests/error_syntax.js", ":!:cli/tests/lint/**", - ":!:cli/tests/encoding/**", - ":!:cli/dts/**", + ":!:cli/tests/tsc/**", ":!:cli/tsc/*typescript.js", - ":!:cli/bench/node*.js", ]) if source_files: max_command_len = 30000