From 2e1ab8232156a23afd22834c1e707fb3403c0db6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Iwa=C5=84czuk?= Date: Wed, 31 Jul 2019 19:16:03 +0200 Subject: refactor: cleanup compiler pipeline (#2686) * remove fetch_source_file_and_maybe_compile_async and replace it with State.fetch_compiled_module * remove SourceFile.js_source() * introduce CompiledModule which is basically the same as deno::SourceInfo and represents arbitrary file that has been compiled to JS module * introduce //cli/compilers module containing all compilers * introduce JsCompiler which is a no-op compiler - output is the same as input, no compilation takes place - it is used for MediaType::JavaScript and MediaType::Unknown * introduce JsonCompiler that wraps JSON in default export * support JS-to-JS compilation using checkJs --- tests/038_checkjs.js | 6 ++++++ tests/038_checkjs.js.out | 15 +++++++++++++++ tests/038_checkjs.test | 5 +++++ tests/038_checkjs.tsconfig.json | 5 +++++ 4 files changed, 31 insertions(+) create mode 100644 tests/038_checkjs.js create mode 100644 tests/038_checkjs.js.out create mode 100644 tests/038_checkjs.test create mode 100644 tests/038_checkjs.tsconfig.json (limited to 'tests') diff --git a/tests/038_checkjs.js b/tests/038_checkjs.js new file mode 100644 index 000000000..628d3e376 --- /dev/null +++ b/tests/038_checkjs.js @@ -0,0 +1,6 @@ +// console.log intentionally misspelled to trigger a type error +consol.log("hello world!"); + +// the following error should be ignored and not output to the console +// eslint-disable-next-line +const foo = new Foo(); diff --git a/tests/038_checkjs.js.out b/tests/038_checkjs.js.out new file mode 100644 index 000000000..deaf77211 --- /dev/null +++ b/tests/038_checkjs.js.out @@ -0,0 +1,15 @@ +[WILDCARD] +error TS2552: Cannot find name 'consol'. Did you mean 'console'? + +[WILDCARD]tests/038_checkjs.js:2:1 + +2 consol.log("hello world!"); +[WILDCARD] +error TS2552: Cannot find name 'Foo'. Did you mean 'foo'? + +[WILDCARD]tests/038_checkjs.js:6:17 + +6 const foo = new Foo(); +[WILDCARD] +Found 2 errors. +[WILDCARD] \ No newline at end of file diff --git a/tests/038_checkjs.test b/tests/038_checkjs.test new file mode 100644 index 000000000..6385c9bb7 --- /dev/null +++ b/tests/038_checkjs.test @@ -0,0 +1,5 @@ +# checking if JS file is run through TS compiler +args: run --reload --config tests/038_checkjs.tsconfig.json tests/038_checkjs.js +check_stderr: true +exit_code: 1 +output: tests/038_checkjs.js.out diff --git a/tests/038_checkjs.tsconfig.json b/tests/038_checkjs.tsconfig.json new file mode 100644 index 000000000..08ac60b6c --- /dev/null +++ b/tests/038_checkjs.tsconfig.json @@ -0,0 +1,5 @@ +{ + "compilerOptions": { + "checkJs": true + } +} -- cgit v1.2.3