1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-22 15:24:46 -05:00
denoland-deno/tests
Bartek Iwańczuk 8214b686ce Refactor DenoDir (#2636)
* rename `ModuleMetaData` to `SourceFile` and remove TS specific
  functionality

* add `TsCompiler` struct encapsulating processing of TypeScript files

* move `SourceMapGetter` trait implementation to `//cli/compiler.rs`

* add low-level `DiskCache` API for general purpose caches and use it in
  `DenoDir` and `TsCompiler` for filesystem access

* don't use hash-like filenames for compiled modules, instead use
  metadata file for storing compilation hash

* add `SourceFileCache` for in-process caching of loaded files for fast
  subsequent access

* define `SourceFileFetcher` trait encapsulating loading of local and
  remote files and implement it for `DenoDir`

* define `use_cache` and `no_fetch` flags on `DenoDir` instead of using
  in fetch methods
2019-07-17 18:15:30 -04:00
..
034_onload Support window.onload (#2643) 2019-07-16 00:19:26 -04:00
importmaps feat: Import maps (#2360) 2019-06-09 09:08:20 -04:00
subdir feat: support .mjs extension resolution (#2283) 2019-05-03 15:03:10 -04:00
001_hello.js Add tools/test.py test runner. (#384) 2018-07-21 19:08:24 -04:00
001_hello.js.out Add tools/test.py test runner. (#384) 2018-07-21 19:08:24 -04:00
001_hello.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
002_hello.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
002_hello.ts Add tools/test.py test runner. (#384) 2018-07-21 19:08:24 -04:00
002_hello.ts.out Add tools/test.py test runner. (#384) 2018-07-21 19:08:24 -04:00
003_relative_import.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
003_relative_import.ts Add tests/003_relative_import.ts 2018-07-29 00:22:39 -04:00
003_relative_import.ts.out Add tests/003_relative_import.ts 2018-07-29 00:22:39 -04:00
004_set_timeout.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
004_set_timeout.ts Fix eslint warnings (#2151) 2019-04-21 16:40:10 -04:00
004_set_timeout.ts.out First pass at setTimeout with Tokio (#434) 2018-08-09 12:17:08 -07:00
005_more_imports.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
005_more_imports.ts Add 005_more_imports.ts 2018-08-02 12:49:40 -04:00
005_more_imports.ts.out Add 005_more_imports.ts 2018-08-02 12:49:40 -04:00
006_url_imports.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
006_url_imports.ts Improve module resolution. 2018-09-05 22:27:23 -04:00
006_url_imports.ts.out Use stderr for exceptions (#1303) 2018-12-10 17:50:41 -05:00
012_async.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
012_async.ts Fix eslint warnings (#2151) 2019-04-21 16:40:10 -04:00
012_async.ts.out Add async tests from prototype 2018-08-11 09:02:07 -07:00
013_dynamic_import.disabled Native ES modules (#1460) 2019-01-09 12:59:46 -05:00
013_dynamic_import.ts Handle compiler diagnostics in Rust (#2445) 2019-06-04 09:03:56 -04:00
013_dynamic_import.ts.out runtime.ts refactor into compiler.ts (#564) 2018-08-22 17:17:26 -04:00
014_duplicate_import.disabled Native ES modules (#1460) 2019-01-09 12:59:46 -05:00
014_duplicate_import.ts Fix eslint warnings (#2151) 2019-04-21 16:40:10 -04:00
014_duplicate_import.ts.out Add duplicate import test 2018-08-28 08:44:34 -04:00
016_double_await.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
016_double_await.ts Fix eslint warnings (#2151) 2019-04-21 16:40:10 -04:00
016_double_await.ts.out Add failing test for #919. 2018-10-06 20:24:47 -04:00
017_import_redirect.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
017_import_redirect.ts Migrate from tslint to eslint for linting (#1905) 2019-03-09 12:30:38 -05:00
017_import_redirect.ts.out Use stderr for exceptions (#1303) 2018-12-10 17:50:41 -05:00
018_async_catch.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
018_async_catch.ts Fix eslint warnings (#2151) 2019-04-21 16:40:10 -04:00
018_async_catch.ts.out Fix promise reject issue (#936) 2018-10-12 14:22:52 -04:00
019_media_types.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
019_media_types.ts Migrate from tslint to eslint for linting (#1905) 2019-03-09 12:30:38 -05:00
019_media_types.ts.out Use stderr for exceptions (#1303) 2018-12-10 17:50:41 -05:00
020_json_modules.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
020_json_modules.ts Fix JSON Modules (#1514) 2019-01-14 00:18:42 -05:00
020_json_modules.ts.out Add ability to load JSON as modules (#1065) 2018-10-30 20:50:40 -07:00
021_mjs_modules.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
021_mjs_modules.ts feat: support .mjs extension resolution (#2283) 2019-05-03 15:03:10 -04:00
021_mjs_modules.ts.out feat: support .mjs extension resolution (#2283) 2019-05-03 15:03:10 -04:00
022_info_flag.out Module dep pretty printing in --info 2019-02-15 11:06:49 -05:00
022_info_flag.test Refactor CLI flag parsing (#2025) 2019-04-07 01:13:06 +03:00
023_no_ext_with_headers Follow redirect location as new referrers for nested module imports (#2031) 2019-04-01 21:46:40 -04:00
023_no_ext_with_headers.headers.json Follow redirect location as new referrers for nested module imports (#2031) 2019-04-01 21:46:40 -04:00
023_no_ext_with_headers.out Follow redirect location as new referrers for nested module imports (#2031) 2019-04-01 21:46:40 -04:00
023_no_ext_with_headers.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
024_import_no_ext_with_headers.test Refactor DenoDir (#2636) 2019-07-17 18:15:30 -04:00
024_import_no_ext_with_headers.ts Follow redirect location as new referrers for nested module imports (#2031) 2019-04-01 21:46:40 -04:00
024_import_no_ext_with_headers.ts.out Follow redirect location as new referrers for nested module imports (#2031) 2019-04-01 21:46:40 -04:00
025_hrtime.test Rename --allow-high-precision to --allow-hrtime (#2398) 2019-05-23 19:28:29 +03:00
025_hrtime.ts Rename --allow-high-precision to --allow-hrtime (#2398) 2019-05-23 19:28:29 +03:00
025_hrtime.ts.out Rename --allow-high-precision to --allow-hrtime (#2398) 2019-05-23 19:28:29 +03:00
025_reload_js_type_error.js Merge the --recompile and --reload flags (#2003) 2019-03-28 16:05:41 -04:00
025_reload_js_type_error.js.out Fix error when JS is executed with --recompile (#2007) 2019-03-27 16:10:31 -04:00
025_reload_js_type_error.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
026_redirect_javascript.js Follow redirect location as new referrers for nested module imports (#2031) 2019-04-01 21:46:40 -04:00
026_redirect_javascript.js.out Follow redirect location as new referrers for nested module imports (#2031) 2019-04-01 21:46:40 -04:00
026_redirect_javascript.js.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
026_workers.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
026_workers.ts Fix eslint warnings (#2151) 2019-04-21 16:40:10 -04:00
026_workers.ts.out Add web worker JS API (#1993) 2019-04-01 15:09:59 -04:00
027_redirect_typescript.ts Follow redirect location as new referrers for nested module imports (#2031) 2019-04-01 21:46:40 -04:00
027_redirect_typescript.ts.out Follow redirect location as new referrers for nested module imports (#2031) 2019-04-01 21:46:40 -04:00
027_redirect_typescript.ts.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
028_args.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
028_args.ts Fix eslint warnings (#2151) 2019-04-21 16:40:10 -04:00
028_args.ts.out Refactor CLI flag parsing (#2025) 2019-04-07 01:13:06 +03:00
029_eval.out Add deno eval subcommand (#2102) 2019-04-13 13:24:15 -04:00
029_eval.test Add deno eval subcommand (#2102) 2019-04-13 13:24:15 -04:00
030_xeval.out feat(cli cmd): deno xeval (#2260) 2019-05-03 16:24:09 -04:00
030_xeval.test feat(cli cmd): deno xeval (#2260) 2019-05-03 16:24:09 -04:00
031_xeval_replvar.out feat(cli cmd): deno xeval (#2260) 2019-05-03 16:24:09 -04:00
031_xeval_replvar.test feat(cli cmd): deno xeval (#2260) 2019-05-03 16:24:09 -04:00
032_xeval_delim.out feat(cli cmd): deno xeval (#2260) 2019-05-03 16:24:09 -04:00
032_xeval_delim.test feat(cli cmd): deno xeval (#2260) 2019-05-03 16:24:09 -04:00
033_import_map.out feat: Import maps (#2360) 2019-06-09 09:08:20 -04:00
033_import_map.test feat: Import maps (#2360) 2019-06-09 09:08:20 -04:00
034_onload.out Support window.onload (#2643) 2019-07-16 00:19:26 -04:00
034_onload.test Support window.onload (#2643) 2019-07-16 00:19:26 -04:00
034_onload_imported.ts Support window.onload (#2643) 2019-07-16 00:19:26 -04:00
async_error.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
async_error.ts Migrate from tslint to eslint for linting (#1905) 2019-03-09 12:30:38 -05:00
async_error.ts.out Combine CLI Errors (#2487) 2019-06-19 19:07:01 -07:00
badly_formatted.js Support --fmt 2019-02-02 17:48:43 -05:00
badly_formatted_fixed.js Support --fmt 2019-02-02 17:48:43 -05:00
cat.ts Migrate from tslint to eslint for linting (#1905) 2019-03-09 12:30:38 -05:00
circular1.js Implement async module loading in CLI (#2084) 2019-04-16 15:13:42 -04:00
circular1.js.out Refactor libdeno ES module interface. (#1624) 2019-01-30 17:21:31 -05:00
circular1.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
circular2.js Implement async module loading in CLI (#2084) 2019-04-16 15:13:42 -04:00
config.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
config.ts Add support for custom tsconfig.json (#2089) 2019-04-29 07:58:31 -07:00
config.ts.out Combine CLI Errors (#2487) 2019-06-19 19:07:01 -07:00
config.tsconfig.json Add support for custom tsconfig.json (#2089) 2019-04-29 07:58:31 -07:00
echo_server.ts Fix eslint warnings (#2151) 2019-04-21 16:40:10 -04:00
error_001.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
error_001.ts Migrate from tslint to eslint for linting (#1905) 2019-03-09 12:30:38 -05:00
error_001.ts.out Combine CLI Errors (#2487) 2019-06-19 19:07:01 -07:00
error_002.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
error_002.ts Migrate from tslint to eslint for linting (#1905) 2019-03-09 12:30:38 -05:00
error_002.ts.out Combine CLI Errors (#2487) 2019-06-19 19:07:01 -07:00
error_003_typescript.test Handle compiler diagnostics in Rust (#2445) 2019-06-04 09:03:56 -04:00
error_003_typescript.ts Handle compiler diagnostics in Rust (#2445) 2019-06-04 09:03:56 -04:00
error_003_typescript.ts.out Combine CLI Errors (#2487) 2019-06-19 19:07:01 -07:00
error_003_typescript2.test Handle compiler diagnostics in Rust (#2445) 2019-06-04 09:03:56 -04:00
error_004_missing_module.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
error_004_missing_module.ts fix: use Loader::resolve in op_fetch_module_meta_data (#2519) 2019-06-18 07:23:06 -07:00
error_004_missing_module.ts.out Refactor DenoDir (#2636) 2019-07-17 18:15:30 -04:00
error_005_missing_dynamic_import.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
error_005_missing_dynamic_import.ts fix: use Loader::resolve in op_fetch_module_meta_data (#2519) 2019-06-18 07:23:06 -07:00
error_005_missing_dynamic_import.ts.out Refactor DenoDir (#2636) 2019-07-17 18:15:30 -04:00
error_006_import_ext_failure.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
error_006_import_ext_failure.ts Guess extensions on extension not provided (#859) 2018-10-02 12:38:45 -04:00
error_006_import_ext_failure.ts.out Refactor DenoDir (#2636) 2019-07-17 18:15:30 -04:00
error_007_any.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
error_007_any.ts Check thrown type, print String(...) if not instance of error (#939) 2018-10-08 11:36:09 -04:00
error_007_any.ts.out Combine CLI Errors (#2487) 2019-06-19 19:07:01 -07:00
error_008_checkjs.js Migrate from tslint to eslint for linting (#1905) 2019-03-09 12:30:38 -05:00
error_008_checkjs.js.out Combine CLI Errors (#2487) 2019-06-19 19:07:01 -07:00
error_008_checkjs.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
error_009_missing_js_module.disabled Implement async module loading in CLI (#2084) 2019-04-16 15:13:42 -04:00
error_009_missing_js_module.js Avoid crashes on ES module resolution when module not found (#1546) 2019-01-18 15:15:09 -05:00
error_009_missing_js_module.js.out Better error message for bad filename CLI argument. 2019-02-02 17:33:21 -05:00
error_010_nonexistent_arg.disabled Implement async module loading in CLI (#2084) 2019-04-16 15:13:42 -04:00
error_010_nonexistent_arg.out Add window.location 2019-02-18 23:04:59 -05:00
error_011_bad_module_specifier.test fix: use Loader::resolve in op_fetch_module_meta_data (#2519) 2019-06-18 07:23:06 -07:00
error_011_bad_module_specifier.ts fix: use Loader::resolve in op_fetch_module_meta_data (#2519) 2019-06-18 07:23:06 -07:00
error_011_bad_module_specifier.ts.out Refactor DenoDir (#2636) 2019-07-17 18:15:30 -04:00
error_012_bad_dynamic_import_specifier.test fix: use Loader::resolve in op_fetch_module_meta_data (#2519) 2019-06-18 07:23:06 -07:00
error_012_bad_dynamic_import_specifier.ts fix: use Loader::resolve in op_fetch_module_meta_data (#2519) 2019-06-18 07:23:06 -07:00
error_012_bad_dynamic_import_specifier.ts.out Refactor DenoDir (#2636) 2019-07-17 18:15:30 -04:00
error_013_missing_script.out Fix multiple error messages for a missing file (#2587) 2019-06-27 09:34:12 -04:00
error_013_missing_script.test Fix multiple error messages for a missing file (#2587) 2019-06-27 09:34:12 -04:00
error_syntax.js Pipe new exception info through into JSError 2019-01-11 21:44:26 -05:00
error_syntax.js.out Combine CLI Errors (#2487) 2019-06-19 19:07:01 -07:00
error_syntax.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
esm_imports_a.js Add rust binding and test for deno_execute_mod() 2019-01-03 09:45:40 -05:00
esm_imports_b.js Add rust binding and test for deno_execute_mod() 2019-01-03 09:45:40 -05:00
exec_path.ts Add execPath function (#1743) 2019-02-15 11:22:02 -05:00
exit_error42.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
exit_error42.ts Add Deno global namespace (#1748) 2019-02-12 10:08:56 -05:00
exit_error42.ts.out Expose deno.exit() and add test. 2018-08-21 18:34:56 -04:00
fetch_deps.ts Fix eslint warnings (#2151) 2019-04-21 16:40:10 -04:00
hello.txt Add resources op (#1119) 2018-10-30 12:58:55 -07:00
https_import.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
https_import.ts Migrate from tslint to eslint for linting (#1905) 2019-03-09 12:30:38 -05:00
https_import.ts.out Use stderr for exceptions (#1303) 2018-12-10 17:50:41 -05:00
if_main.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
if_main.ts Add window.location 2019-02-18 23:04:59 -05:00
if_main.ts.out Add window.location 2019-02-18 23:04:59 -05:00
import_meta.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
import_meta.ts Implement async module loading in CLI (#2084) 2019-04-16 15:13:42 -04:00
import_meta.ts.out Add import.meta.main (#1835) 2019-02-26 13:29:45 -05:00
import_meta2.ts Add import.meta.main (#1835) 2019-02-26 13:29:45 -05:00
is_tty.ts Add Deno global namespace (#1748) 2019-02-12 10:08:56 -05:00
no_color.js Remove 'deno' builtin module (#1895) 2019-03-07 21:56:56 -05:00
README.md Improve integration test harness (#1142) 2018-11-04 11:52:31 -08:00
seed_random.js Add --seed for setting RNG seed (#2483) 2019-06-11 10:34:39 -04:00
seed_random.js.out Add --seed for setting RNG seed (#2483) 2019-06-11 10:34:39 -04:00
seed_random.test Add --seed for setting RNG seed (#2483) 2019-06-11 10:34:39 -04:00
types.out Add Deno global namespace (#1748) 2019-02-12 10:08:56 -05:00
types.test Refactor CLI entry point (#2157) 2019-04-21 11:34:18 -04:00
unbuffered_stderr.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
unbuffered_stderr.ts Add Deno global namespace (#1748) 2019-02-12 10:08:56 -05:00
unbuffered_stderr.ts.out Add progress bar (#2309) 2019-05-11 10:23:19 -04:00
unbuffered_stdout.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
unbuffered_stdout.ts Add Deno global namespace (#1748) 2019-02-12 10:08:56 -05:00
unbuffered_stdout.ts.out make stdout unbuffered (#1355) 2018-12-22 23:53:29 -05:00
v8_flags.js Fix: deno --v8-options does not print v8 options (#2277) 2019-05-03 08:59:52 -04:00
v8_flags.js.out Fix: deno --v8-options does not print v8 options (#2277) 2019-05-03 08:59:52 -04:00
v8_flags.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
v8_help.out Fix: deno --v8-options does not print v8 options (#2277) 2019-05-03 08:59:52 -04:00
v8_help.test Fix: deno --v8-options does not print v8 options (#2277) 2019-05-03 08:59:52 -04:00
version.out fix: deno version panic (#2286) 2019-05-03 18:48:50 -04:00
version.test fix: deno version panic (#2286) 2019-05-03 18:48:50 -04:00
wasm.test add "deno run" subcommand (#2215) 2019-05-03 17:15:16 -04:00
wasm.ts Add WebAssembly to runtime library (#1677) 2019-02-05 08:12:58 -05:00
wasm.ts.out Add WebAssembly to runtime library (#1677) 2019-02-05 08:12:58 -05:00
wasm_async.js Fix silent failure of WebAssembly.instantiate() (#2548) 2019-06-20 09:04:34 -07:00
wasm_async.out Fix silent failure of WebAssembly.instantiate() (#2548) 2019-06-20 09:04:34 -07:00
wasm_async.test Fix silent failure of WebAssembly.instantiate() (#2548) 2019-06-20 09:04:34 -07:00
workers_round_robin_bench.ts Fix eslint warnings (#2151) 2019-04-21 16:40:10 -04:00
workers_startup_bench.ts Fix eslint warnings (#2151) 2019-04-21 16:40:10 -04:00

Integration Tests

This path contains integration tests. When the integration tests are run, the test harness will execute tests which are defined in a .test file and located in the base of this path.

A .test file is a simple configuration format where each option is specified on a single line. The key is the string to the left of the : deliminator and the value is the string to the right.

Key Required Description
args Yes Specifies the command line arguments for the test. This should typically be input script for the test and a --reload to help ensure Deno doesn't leverage the cache.
output Yes This is a text file which represents the output of the command. The string [WILDCARD] can be used in the output to specify ranges of text which any output is accepted.
exit_code No If not present, it is assumed the script would exit normally (0). If specified, the harness will ensure the proper code is received.