diff options
Diffstat (limited to 'tests/specs')
71 files changed, 354 insertions, 0 deletions
diff --git a/tests/specs/check/check_broadcast_channel/__test__.jsonc b/tests/specs/check/check_broadcast_channel/__test__.jsonc new file mode 100644 index 000000000..6190781a5 --- /dev/null +++ b/tests/specs/check/check_broadcast_channel/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet broadcast_channel.ts", + "output": "", + "exitCode": 0 +} diff --git a/tests/specs/check/check_broadcast_channel/broadcast_channel.ts b/tests/specs/check/check_broadcast_channel/broadcast_channel.ts new file mode 100644 index 000000000..6c75b4a8e --- /dev/null +++ b/tests/specs/check/check_broadcast_channel/broadcast_channel.ts @@ -0,0 +1 @@ +const _channel = new BroadcastChannel("foo"); diff --git a/tests/specs/check/check_deno_not_found/__test__.jsonc b/tests/specs/check/check_deno_not_found/__test__.jsonc new file mode 100644 index 000000000..cbc6552b3 --- /dev/null +++ b/tests/specs/check/check_deno_not_found/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet deno_not_found/main.ts", + "output": "deno_not_found/main.out", + "exitCode": 1 +} diff --git a/tests/specs/check/check_deno_not_found/deno_not_found/main.out b/tests/specs/check/check_deno_not_found/deno_not_found/main.out new file mode 100644 index 000000000..2b6f44d1e --- /dev/null +++ b/tests/specs/check/check_deno_not_found/deno_not_found/main.out @@ -0,0 +1,4 @@ +error: TS2304 [ERROR]: Cannot find name 'Deno'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'deno.ns' or add a triple-slash directive to the top of your entrypoint (main file): /// <reference lib="deno.ns" /> +Deno; +~~~~ + at file:///[WILDCARD]/deno_not_found/main.ts:4:1 diff --git a/tests/specs/check/check_deno_not_found/deno_not_found/main.ts b/tests/specs/check/check_deno_not_found/deno_not_found/main.ts new file mode 100644 index 000000000..3269f047a --- /dev/null +++ b/tests/specs/check/check_deno_not_found/deno_not_found/main.ts @@ -0,0 +1,4 @@ +/// <reference no-default-lib="true"/> +/// <reference lib="es5" /> + +Deno; diff --git a/tests/specs/check/check_dts/__test__.jsonc b/tests/specs/check/check_dts/__test__.jsonc new file mode 100644 index 000000000..d684e2063 --- /dev/null +++ b/tests/specs/check/check_dts/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet dts/check_dts.d.ts", + "output": "dts/check_dts.out", + "exitCode": 1 +} diff --git a/tests/specs/check/check_dts/dts/check_dts.d.ts b/tests/specs/check/check_dts/dts/check_dts.d.ts new file mode 100644 index 000000000..9cf60f063 --- /dev/null +++ b/tests/specs/check/check_dts/dts/check_dts.d.ts @@ -0,0 +1,2 @@ +// TS1039 [ERROR]: Initializers are not allowed in ambient contexts. +export const a: string = Deno.version.deno; diff --git a/tests/specs/check/check_dts/dts/check_dts.out b/tests/specs/check/check_dts/dts/check_dts.out new file mode 100644 index 000000000..e7ff9a009 --- /dev/null +++ b/tests/specs/check/check_dts/dts/check_dts.out @@ -0,0 +1,4 @@ +error: TS1039 [ERROR]: Initializers are not allowed in ambient contexts. +export const a: string = Deno.version.deno; + ~~~~~~~~~~~~~~~~~ + at file:///[WILDCARD]/check_dts.d.ts:2:26 diff --git a/tests/specs/check/check_imported_files_listed_in_exclude_option/__test__.jsonc b/tests/specs/check/check_imported_files_listed_in_exclude_option/__test__.jsonc new file mode 100644 index 000000000..1fd2d8760 --- /dev/null +++ b/tests/specs/check/check_imported_files_listed_in_exclude_option/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet --config exclude_option/deno.exclude_dir.json exclude_option/index.ts", + "output": "exclude_option/exclude_option.ts.error.out", + "exitCode": 1 +} diff --git a/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/deno.exclude_dir.json b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/deno.exclude_dir.json new file mode 100644 index 000000000..2019f8953 --- /dev/null +++ b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/deno.exclude_dir.json @@ -0,0 +1,5 @@ +{ + "exclude": [ + "ignored" + ] +} diff --git a/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/deno.exclude_glob.json b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/deno.exclude_glob.json new file mode 100644 index 000000000..1d203ba08 --- /dev/null +++ b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/deno.exclude_glob.json @@ -0,0 +1,5 @@ +{ + "exclude": [ + "ignored/**/*" + ] +} diff --git a/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/deno.json b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/deno.json new file mode 100644 index 000000000..a9eca74ca --- /dev/null +++ b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/deno.json @@ -0,0 +1,3 @@ +{ + "exclude": [] +} diff --git a/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/exclude_option.ts.error.out b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/exclude_option.ts.error.out new file mode 100644 index 000000000..abd1c1258 --- /dev/null +++ b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/exclude_option.ts.error.out @@ -0,0 +1,4 @@ +error: TS2304 [ERROR]: Cannot find name 'nothing'. +export { nothing }; + ~~~~~~~ + at [WILDCARD] diff --git a/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/ignored/index.ts b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/ignored/index.ts new file mode 100644 index 000000000..0419cf073 --- /dev/null +++ b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/ignored/index.ts @@ -0,0 +1 @@ +export { nothing }; diff --git a/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/index.ts b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/index.ts new file mode 100644 index 000000000..8335ca3a2 --- /dev/null +++ b/tests/specs/check/check_imported_files_listed_in_exclude_option/exclude_option/index.ts @@ -0,0 +1,5 @@ +import { nothing } from "./ignored/index.ts"; + +const foo = 1; + +export { foo, nothing }; diff --git a/tests/specs/check/check_jsximportsource_importmap_config/__test__.jsonc b/tests/specs/check/check_jsximportsource_importmap_config/__test__.jsonc new file mode 100644 index 000000000..bbe32ca9e --- /dev/null +++ b/tests/specs/check/check_jsximportsource_importmap_config/__test__.jsonc @@ -0,0 +1,4 @@ +{ + "args": "check --quiet --config jsximportsource_importmap_config/deno.json jsximportsource_importmap_config/main.tsx", + "output": "" +} diff --git a/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/deno.json b/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/deno.json new file mode 100644 index 000000000..6d837af7c --- /dev/null +++ b/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/deno.json @@ -0,0 +1,7 @@ +{ + "compilerOptions": { + "jsx": "react-jsx", + "jsxImportSource": "jsx" + }, + "importMap": "./import_map.json" +} diff --git a/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/import_map.json b/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/import_map.json new file mode 100644 index 000000000..e926207af --- /dev/null +++ b/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/import_map.json @@ -0,0 +1,5 @@ +{ + "imports": { + "jsx/jsx-runtime": "./jsx_runtime.ts" + } +} diff --git a/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/jsx_runtime.ts b/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/jsx_runtime.ts new file mode 100644 index 000000000..33a07ca73 --- /dev/null +++ b/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/jsx_runtime.ts @@ -0,0 +1,4 @@ +// deno-lint-ignore no-namespace +export namespace JSX { + export type IntrinsicElements = { [key: string]: unknown }; +} diff --git a/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/main.tsx b/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/main.tsx new file mode 100644 index 000000000..a1eb24f0b --- /dev/null +++ b/tests/specs/check/check_jsximportsource_importmap_config/jsximportsource_importmap_config/main.tsx @@ -0,0 +1 @@ +export const makeParagraph = () => <p>A paragraph!</p>; diff --git a/tests/specs/check/check_no_error_truncation/__test__.jsonc b/tests/specs/check/check_no_error_truncation/__test__.jsonc new file mode 100644 index 000000000..15884059c --- /dev/null +++ b/tests/specs/check/check_no_error_truncation/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet no_error_truncation/main.ts --config no_error_truncation/deno.json", + "output": "no_error_truncation/main.out", + "exitCode": 1 +} diff --git a/tests/specs/check/check_no_error_truncation/no_error_truncation/deno.json b/tests/specs/check/check_no_error_truncation/no_error_truncation/deno.json new file mode 100644 index 000000000..643707ccc --- /dev/null +++ b/tests/specs/check/check_no_error_truncation/no_error_truncation/deno.json @@ -0,0 +1,5 @@ +{ + "compilerOptions": { + "noErrorTruncation": true + } +} diff --git a/tests/specs/check/check_no_error_truncation/no_error_truncation/main.out b/tests/specs/check/check_no_error_truncation/no_error_truncation/main.out new file mode 100644 index 000000000..13fd5aae4 --- /dev/null +++ b/tests/specs/check/check_no_error_truncation/no_error_truncation/main.out @@ -0,0 +1,11 @@ +error: TS2322 [ERROR]: Type '{ propertyWithAnExceedinglyLongName1: string; propertyWithAnExceedinglyLongName2: string; propertyWithAnExceedinglyLongName3: string; propertyWithAnExceedinglyLongName4: string; propertyWithAnExceedinglyLongName5: string; propertyWithAnExceedinglyLongName6: string; propertyWithAnExceedinglyLongName7: string; propertyWithAnExceedinglyLongName8: string; }' is not assignable to type 'string'. +const _s: string = x; + ~~ + at file:///[WILDCARD]/no_error_truncation/main.ts:12:7 + +TS2454 [ERROR]: Variable 'x' is used before being assigned. +const _s: string = x; + ^ + at file:///[WILDCARD]/no_error_truncation/main.ts:12:20 + +Found 2 errors. diff --git a/tests/specs/check/check_no_error_truncation/no_error_truncation/main.ts b/tests/specs/check/check_no_error_truncation/no_error_truncation/main.ts new file mode 100644 index 000000000..bb1856602 --- /dev/null +++ b/tests/specs/check/check_no_error_truncation/no_error_truncation/main.ts @@ -0,0 +1,12 @@ +let x: { + propertyWithAnExceedinglyLongName1: string; + propertyWithAnExceedinglyLongName2: string; + propertyWithAnExceedinglyLongName3: string; + propertyWithAnExceedinglyLongName4: string; + propertyWithAnExceedinglyLongName5: string; + propertyWithAnExceedinglyLongName6: string; + propertyWithAnExceedinglyLongName7: string; + propertyWithAnExceedinglyLongName8: string; +}; + +const _s: string = x; diff --git a/tests/specs/check/check_node_builtin_modules_js/__test__.jsonc b/tests/specs/check/check_node_builtin_modules_js/__test__.jsonc new file mode 100644 index 000000000..8f7a2a65a --- /dev/null +++ b/tests/specs/check/check_node_builtin_modules_js/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet node_builtin_modules/mod.js", + "output": "node_builtin_modules/mod.js.out", + "exitCode": 1 +} diff --git a/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.js b/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.js new file mode 100644 index 000000000..196fb9be9 --- /dev/null +++ b/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.js @@ -0,0 +1,3 @@ +// @ts-check +import fs from "node:fs"; +const _data = fs.readFileSync("./node_builtin.js", 123); diff --git a/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.js.out b/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.js.out new file mode 100644 index 000000000..97786ebae --- /dev/null +++ b/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.js.out @@ -0,0 +1,5 @@ +error: TS2769 [ERROR]: No overload matches this call. + [WILDCARD] +const _data = fs.readFileSync("./node_builtin.js", 123); + ~~~ + at file:///[WILDCARD]/node_builtin_modules/mod.js:3:52 diff --git a/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.ts b/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.ts new file mode 100644 index 000000000..0e62353fe --- /dev/null +++ b/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.ts @@ -0,0 +1,9 @@ +import fs from "node:fs"; +const _data = fs.readFileSync("./node_builtin.js", 123); + +// check node:module specifically because for deno check it should +// resolve to the @types/node package, but at runtime it uses a different +// builtin object than deno_std +import { builtinModules } from "node:module"; +// should error about being string[] +const _testString: number[] = builtinModules; diff --git a/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.ts.out b/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.ts.out new file mode 100644 index 000000000..49b762cff --- /dev/null +++ b/tests/specs/check/check_node_builtin_modules_js/node_builtin_modules/mod.ts.out @@ -0,0 +1,13 @@ +error: TS2769 [ERROR]: No overload matches this call. + [WILDCARD] +const _data = fs.readFileSync("./node_builtin.js", 123); + ~~~ + at file:///[WILDCARD]/node_builtin_modules/mod.ts:2:52 + +TS2322 [ERROR]: Type 'string[]' is not assignable to type 'number[]'. + Type 'string' is not assignable to type 'number'. +const _testString: number[] = builtinModules; + ~~~~~~~~~~~ + at file:///[WILDCARD]/node_builtin_modules/mod.ts:9:7 + +Found 2 errors. diff --git a/tests/specs/check/check_node_builtin_modules_ts/__test__.jsonc b/tests/specs/check/check_node_builtin_modules_ts/__test__.jsonc new file mode 100644 index 000000000..736885f2e --- /dev/null +++ b/tests/specs/check/check_node_builtin_modules_ts/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet node_builtin_modules/mod.ts", + "output": "node_builtin_modules/mod.ts.out", + "exitCode": 1 +} diff --git a/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.js b/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.js new file mode 100644 index 000000000..196fb9be9 --- /dev/null +++ b/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.js @@ -0,0 +1,3 @@ +// @ts-check +import fs from "node:fs"; +const _data = fs.readFileSync("./node_builtin.js", 123); diff --git a/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.js.out b/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.js.out new file mode 100644 index 000000000..97786ebae --- /dev/null +++ b/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.js.out @@ -0,0 +1,5 @@ +error: TS2769 [ERROR]: No overload matches this call. + [WILDCARD] +const _data = fs.readFileSync("./node_builtin.js", 123); + ~~~ + at file:///[WILDCARD]/node_builtin_modules/mod.js:3:52 diff --git a/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.ts b/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.ts new file mode 100644 index 000000000..0e62353fe --- /dev/null +++ b/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.ts @@ -0,0 +1,9 @@ +import fs from "node:fs"; +const _data = fs.readFileSync("./node_builtin.js", 123); + +// check node:module specifically because for deno check it should +// resolve to the @types/node package, but at runtime it uses a different +// builtin object than deno_std +import { builtinModules } from "node:module"; +// should error about being string[] +const _testString: number[] = builtinModules; diff --git a/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.ts.out b/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.ts.out new file mode 100644 index 000000000..49b762cff --- /dev/null +++ b/tests/specs/check/check_node_builtin_modules_ts/node_builtin_modules/mod.ts.out @@ -0,0 +1,13 @@ +error: TS2769 [ERROR]: No overload matches this call. + [WILDCARD] +const _data = fs.readFileSync("./node_builtin.js", 123); + ~~~ + at file:///[WILDCARD]/node_builtin_modules/mod.ts:2:52 + +TS2322 [ERROR]: Type 'string[]' is not assignable to type 'number[]'. + Type 'string' is not assignable to type 'number'. +const _testString: number[] = builtinModules; + ~~~~~~~~~~~ + at file:///[WILDCARD]/node_builtin_modules/mod.ts:9:7 + +Found 2 errors. diff --git a/tests/specs/check/check_npm_install_diagnostics/__test__.jsonc b/tests/specs/check/check_npm_install_diagnostics/__test__.jsonc new file mode 100644 index 000000000..18260d362 --- /dev/null +++ b/tests/specs/check/check_npm_install_diagnostics/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet npm_install_diagnostics/main.ts", + "output": "npm_install_diagnostics/main.out", + "exitCode": 1 +} diff --git a/tests/specs/check/check_npm_install_diagnostics/npm_install_diagnostics/main.out b/tests/specs/check/check_npm_install_diagnostics/npm_install_diagnostics/main.out new file mode 100644 index 000000000..fe46f0e42 --- /dev/null +++ b/tests/specs/check/check_npm_install_diagnostics/npm_install_diagnostics/main.out @@ -0,0 +1,11 @@ +error: TS2581 [ERROR]: Cannot find name '$'. Did you mean to import jQuery? Try adding `import $ from "npm:jquery";`. +$; +^ + at file:///[WILDCARD]/npm_install_diagnostics/main.ts:1:1 + +TS2580 [ERROR]: Cannot find name 'process'. +process; +~~~~~~~ + at file:///[WILDCARD]/npm_install_diagnostics/main.ts:2:1 + +Found 2 errors. diff --git a/tests/specs/check/check_npm_install_diagnostics/npm_install_diagnostics/main.ts b/tests/specs/check/check_npm_install_diagnostics/npm_install_diagnostics/main.ts new file mode 100644 index 000000000..62c0c5619 --- /dev/null +++ b/tests/specs/check/check_npm_install_diagnostics/npm_install_diagnostics/main.ts @@ -0,0 +1,2 @@ +$; +process; diff --git a/tests/specs/check/check_static_response_json/__test__.jsonc b/tests/specs/check/check_static_response_json/__test__.jsonc new file mode 100644 index 000000000..d286d3aa8 --- /dev/null +++ b/tests/specs/check/check_static_response_json/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet response_json.ts", + "output": "", + "exitCode": 0 +} diff --git a/tests/specs/check/check_static_response_json/response_json.ts b/tests/specs/check/check_static_response_json/response_json.ts new file mode 100644 index 000000000..e936f7bff --- /dev/null +++ b/tests/specs/check/check_static_response_json/response_json.ts @@ -0,0 +1,5 @@ +/// <reference no-default-lib="true" /> +/// <reference lib="dom" /> +/// <reference lib="esnext" /> + +Response.json({}); diff --git a/tests/specs/check/check_with_exclude_option_by_dir/__test__.jsonc b/tests/specs/check/check_with_exclude_option_by_dir/__test__.jsonc new file mode 100644 index 000000000..c7fe285da --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_dir/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet --config exclude_option/deno.exclude_dir.json exclude_option/ignored/index.ts", + "output": "", + "exitCode": 0 +} diff --git a/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/deno.exclude_dir.json b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/deno.exclude_dir.json new file mode 100644 index 000000000..2019f8953 --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/deno.exclude_dir.json @@ -0,0 +1,5 @@ +{ + "exclude": [ + "ignored" + ] +} diff --git a/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/deno.exclude_glob.json b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/deno.exclude_glob.json new file mode 100644 index 000000000..1d203ba08 --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/deno.exclude_glob.json @@ -0,0 +1,5 @@ +{ + "exclude": [ + "ignored/**/*" + ] +} diff --git a/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/deno.json b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/deno.json new file mode 100644 index 000000000..a9eca74ca --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/deno.json @@ -0,0 +1,3 @@ +{ + "exclude": [] +} diff --git a/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/exclude_option.ts.error.out b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/exclude_option.ts.error.out new file mode 100644 index 000000000..abd1c1258 --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/exclude_option.ts.error.out @@ -0,0 +1,4 @@ +error: TS2304 [ERROR]: Cannot find name 'nothing'. +export { nothing }; + ~~~~~~~ + at [WILDCARD] diff --git a/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/ignored/index.ts b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/ignored/index.ts new file mode 100644 index 000000000..0419cf073 --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/ignored/index.ts @@ -0,0 +1 @@ +export { nothing }; diff --git a/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/index.ts b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/index.ts new file mode 100644 index 000000000..8335ca3a2 --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_dir/exclude_option/index.ts @@ -0,0 +1,5 @@ +import { nothing } from "./ignored/index.ts"; + +const foo = 1; + +export { foo, nothing }; diff --git a/tests/specs/check/check_with_exclude_option_by_glob/__test__.jsonc b/tests/specs/check/check_with_exclude_option_by_glob/__test__.jsonc new file mode 100644 index 000000000..54700ca3d --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_glob/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet --config exclude_option/deno.exclude_glob.json exclude_option/ignored/index.ts", + "output": "", + "exitCode": 0 +} diff --git a/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/deno.exclude_dir.json b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/deno.exclude_dir.json new file mode 100644 index 000000000..2019f8953 --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/deno.exclude_dir.json @@ -0,0 +1,5 @@ +{ + "exclude": [ + "ignored" + ] +} diff --git a/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/deno.exclude_glob.json b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/deno.exclude_glob.json new file mode 100644 index 000000000..1d203ba08 --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/deno.exclude_glob.json @@ -0,0 +1,5 @@ +{ + "exclude": [ + "ignored/**/*" + ] +} diff --git a/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/deno.json b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/deno.json new file mode 100644 index 000000000..a9eca74ca --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/deno.json @@ -0,0 +1,3 @@ +{ + "exclude": [] +} diff --git a/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/exclude_option.ts.error.out b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/exclude_option.ts.error.out new file mode 100644 index 000000000..abd1c1258 --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/exclude_option.ts.error.out @@ -0,0 +1,4 @@ +error: TS2304 [ERROR]: Cannot find name 'nothing'. +export { nothing }; + ~~~~~~~ + at [WILDCARD] diff --git a/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/ignored/index.ts b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/ignored/index.ts new file mode 100644 index 000000000..0419cf073 --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/ignored/index.ts @@ -0,0 +1 @@ +export { nothing }; diff --git a/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/index.ts b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/index.ts new file mode 100644 index 000000000..8335ca3a2 --- /dev/null +++ b/tests/specs/check/check_with_exclude_option_by_glob/exclude_option/index.ts @@ -0,0 +1,5 @@ +import { nothing } from "./ignored/index.ts"; + +const foo = 1; + +export { foo, nothing }; diff --git a/tests/specs/check/check_without_exclude_option/__test__.jsonc b/tests/specs/check/check_without_exclude_option/__test__.jsonc new file mode 100644 index 000000000..801786fa3 --- /dev/null +++ b/tests/specs/check/check_without_exclude_option/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check --quiet --config exclude_option/deno.json exclude_option/ignored/index.ts", + "output": "exclude_option/exclude_option.ts.error.out", + "exitCode": 1 +} diff --git a/tests/specs/check/check_without_exclude_option/exclude_option/deno.exclude_dir.json b/tests/specs/check/check_without_exclude_option/exclude_option/deno.exclude_dir.json new file mode 100644 index 000000000..2019f8953 --- /dev/null +++ b/tests/specs/check/check_without_exclude_option/exclude_option/deno.exclude_dir.json @@ -0,0 +1,5 @@ +{ + "exclude": [ + "ignored" + ] +} diff --git a/tests/specs/check/check_without_exclude_option/exclude_option/deno.exclude_glob.json b/tests/specs/check/check_without_exclude_option/exclude_option/deno.exclude_glob.json new file mode 100644 index 000000000..1d203ba08 --- /dev/null +++ b/tests/specs/check/check_without_exclude_option/exclude_option/deno.exclude_glob.json @@ -0,0 +1,5 @@ +{ + "exclude": [ + "ignored/**/*" + ] +} diff --git a/tests/specs/check/check_without_exclude_option/exclude_option/deno.json b/tests/specs/check/check_without_exclude_option/exclude_option/deno.json new file mode 100644 index 000000000..a9eca74ca --- /dev/null +++ b/tests/specs/check/check_without_exclude_option/exclude_option/deno.json @@ -0,0 +1,3 @@ +{ + "exclude": [] +} diff --git a/tests/specs/check/check_without_exclude_option/exclude_option/exclude_option.ts.error.out b/tests/specs/check/check_without_exclude_option/exclude_option/exclude_option.ts.error.out new file mode 100644 index 000000000..abd1c1258 --- /dev/null +++ b/tests/specs/check/check_without_exclude_option/exclude_option/exclude_option.ts.error.out @@ -0,0 +1,4 @@ +error: TS2304 [ERROR]: Cannot find name 'nothing'. +export { nothing }; + ~~~~~~~ + at [WILDCARD] diff --git a/tests/specs/check/check_without_exclude_option/exclude_option/ignored/index.ts b/tests/specs/check/check_without_exclude_option/exclude_option/ignored/index.ts new file mode 100644 index 000000000..0419cf073 --- /dev/null +++ b/tests/specs/check/check_without_exclude_option/exclude_option/ignored/index.ts @@ -0,0 +1 @@ +export { nothing }; diff --git a/tests/specs/check/check_without_exclude_option/exclude_option/index.ts b/tests/specs/check/check_without_exclude_option/exclude_option/index.ts new file mode 100644 index 000000000..8335ca3a2 --- /dev/null +++ b/tests/specs/check/check_without_exclude_option/exclude_option/index.ts @@ -0,0 +1,5 @@ +import { nothing } from "./ignored/index.ts"; + +const foo = 1; + +export { foo, nothing }; diff --git a/tests/specs/check/declaration_header_file_with_no_exports/__test__.jsonc b/tests/specs/check/declaration_header_file_with_no_exports/__test__.jsonc new file mode 100644 index 000000000..08fc0a2d6 --- /dev/null +++ b/tests/specs/check/declaration_header_file_with_no_exports/__test__.jsonc @@ -0,0 +1,4 @@ +{ + "args": "check --quiet declaration_header_file_with_no_exports.ts", + "output": "" +} diff --git a/tests/specs/check/declaration_header_file_with_no_exports/declaration_header_file_with_no_exports.ts b/tests/specs/check/declaration_header_file_with_no_exports/declaration_header_file_with_no_exports.ts new file mode 100644 index 000000000..ef5da7a38 --- /dev/null +++ b/tests/specs/check/declaration_header_file_with_no_exports/declaration_header_file_with_no_exports.ts @@ -0,0 +1,2 @@ +import * as foo from "./declaration_header_file_with_no_exports_js.js"; +console.log(foo); diff --git a/tests/specs/check/declaration_header_file_with_no_exports/declaration_header_file_with_no_exports_js.d.ts b/tests/specs/check/declaration_header_file_with_no_exports/declaration_header_file_with_no_exports_js.d.ts new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/tests/specs/check/declaration_header_file_with_no_exports/declaration_header_file_with_no_exports_js.d.ts diff --git a/tests/specs/check/declaration_header_file_with_no_exports/declaration_header_file_with_no_exports_js.js b/tests/specs/check/declaration_header_file_with_no_exports/declaration_header_file_with_no_exports_js.js new file mode 100644 index 000000000..b8ae2bcef --- /dev/null +++ b/tests/specs/check/declaration_header_file_with_no_exports/declaration_header_file_with_no_exports_js.js @@ -0,0 +1 @@ +/// <reference types="./declaration_header_file_with_no_exports_js.d.ts" /> diff --git a/tests/specs/check/jsx_not_checked/__test__.jsonc b/tests/specs/check/jsx_not_checked/__test__.jsonc new file mode 100644 index 000000000..dbaa9b2ea --- /dev/null +++ b/tests/specs/check/jsx_not_checked/__test__.jsonc @@ -0,0 +1,5 @@ +{ + "args": "check jsx_not_checked/main.jsx", + "output": "jsx_not_checked/main.out", + "exitCode": 1 +} diff --git a/tests/specs/check/jsx_not_checked/jsx_not_checked/main.jsx b/tests/specs/check/jsx_not_checked/jsx_not_checked/main.jsx new file mode 100644 index 000000000..8de05f9f7 --- /dev/null +++ b/tests/specs/check/jsx_not_checked/jsx_not_checked/main.jsx @@ -0,0 +1,21 @@ +// should not error about jsx-runtime not being found in types here +/** @jsxImportSource npm:react@18.2.0 */ + +import "./other.ts"; + +export default ( + <> + <h1>Hello world</h1> + <p>This is a JSX page</p> + </> +); + +/** + * @param {number} a + * @param {number} b + */ +function add(a, b) { + return a + b; +} + +console.log(add("1", "2")); diff --git a/tests/specs/check/jsx_not_checked/jsx_not_checked/main.out b/tests/specs/check/jsx_not_checked/jsx_not_checked/main.out new file mode 100644 index 000000000..25165044c --- /dev/null +++ b/tests/specs/check/jsx_not_checked/jsx_not_checked/main.out @@ -0,0 +1,13 @@ +[UNORDERED_START] +Download http://localhost:4260/react +Download http://localhost:4260/loose-envify +Download http://localhost:4260/js-tokens +Download http://localhost:4260/react/react-18.2.0.tgz +Download http://localhost:4260/loose-envify/loose-envify-1.4.0.tgz +Download http://localhost:4260/js-tokens/js-tokens-4.0.0.tgz +[UNORDERED_END] +Check file:///[WILDCARD]/jsx_not_checked/main.jsx +error: TS2345 [ERROR]: Argument of type 'string' is not assignable to parameter of type 'number'. +console.log(add("1", "2")); + ~~~ + at file:///[WILDCARD]/other.ts:5:17 diff --git a/tests/specs/check/jsx_not_checked/jsx_not_checked/other.ts b/tests/specs/check/jsx_not_checked/jsx_not_checked/other.ts new file mode 100644 index 000000000..47995cb0f --- /dev/null +++ b/tests/specs/check/jsx_not_checked/jsx_not_checked/other.ts @@ -0,0 +1,5 @@ +function add(a: number, b: number) { + return a + b; +} + +console.log(add("1", "2")); diff --git a/tests/specs/check/module_detection_force/__test__.jsonc b/tests/specs/check/module_detection_force/__test__.jsonc new file mode 100644 index 000000000..9c892bd72 --- /dev/null +++ b/tests/specs/check/module_detection_force/__test__.jsonc @@ -0,0 +1,4 @@ +{ + "args": "check --quiet module_detection_force/main.ts", + "output": "" +} diff --git a/tests/specs/check/module_detection_force/module_detection_force/import.ts b/tests/specs/check/module_detection_force/module_detection_force/import.ts new file mode 100644 index 000000000..66b229870 --- /dev/null +++ b/tests/specs/check/module_detection_force/module_detection_force/import.ts @@ -0,0 +1,2 @@ +const a = 2; +console.log(a); diff --git a/tests/specs/check/module_detection_force/module_detection_force/main.ts b/tests/specs/check/module_detection_force/module_detection_force/main.ts new file mode 100644 index 000000000..a55c9962b --- /dev/null +++ b/tests/specs/check/module_detection_force/module_detection_force/main.ts @@ -0,0 +1,3 @@ +const a = 1; +await import("./import.ts"); +console.log(a); |