0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-02-06 22:45:03 -05:00
denoland-deno/cli/tests/unit
Matt Mastracci 2c621f5894
refactor(cli): Move op descriptions into Rust and prepare for op import (#22271)
This moves the op sanitizer descriptions into Rust code and prepares for
eventual op import from `ext:core/ops`. We cannot import these ops from
`ext:core/ops` as the testing infrastructure ops are not always present.

Changes:
- Op descriptions live in `cli` code and are currently accessible via an
op for the older sanitizer code
 - `phf` dep moved to workspace root so we can use it here
- `ops.op_XXX` changed to to `op_XXX` to prepare for op imports later
on.
2024-02-05 20:26:59 +00:00
..
abort_controller_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
blob_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
body_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
broadcast_channel_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
buffer_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
build_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
cache_api_test.ts chore(ext/cache): remove CachePutResource in preparation for resource rewrite (#21949) 2024-01-15 13:14:54 -07:00
chmod_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
chown_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
command_test.ts chore: use Deno.writeTextFile() where appropriate (#22008) 2024-01-21 21:58:24 +01:00
console_test.ts chore: upgrade deno_core to 0.246.0 (#21904) 2024-01-14 18:28:46 -07:00
copy_file_test.ts fix(fs): copyFile NUL path on macOS (#22216) 2024-02-01 10:06:09 +05:30
cron_test.ts fix(ext/cron): automatically override unspecified values (#22042) 2024-01-24 00:45:11 +00:00
custom_event_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
dir_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
dom_exception_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
error_stack_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
error_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
esnext_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
event_target_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
event_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
fetch_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
ffi_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
file_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
filereader_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
files_test.ts feat(unstable): Deno.FsFile.lock[Sync]() and Deno.FsFile.unlock[Sync]() (#22235) 2024-02-05 00:11:54 +01:00
flock_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
fs_events_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
get_random_values_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
globals_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
headers_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
http_test.ts feat: deprecate Deno.resources() (#22059) 2024-01-24 00:27:29 +01:00
image_bitmap_test.ts feat(web): ImageBitmap (#21898) 2024-01-22 12:08:01 +01:00
image_data_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
internals_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
intl_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
io_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
jupyter_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
kv_queue_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
kv_queue_test_no_db_close.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
kv_queue_undelivered_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
kv_test.ts fix(unstable): validate kv list selector (#22265) 2024-02-06 00:27:03 +08:00
link_test.ts chore: use Deno.readTextFile() where appropriate (#22018) 2024-01-21 23:41:28 +01:00
make_temp_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
message_channel_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
mkdir_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
navigator_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
net_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
network_interfaces_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
ops_test.ts refactor(cli): Move op descriptions into Rust and prepare for op import (#22271) 2024-02-05 20:26:59 +00:00
os_test.ts fix(runtime): return number from op_ppid instead of bigint (#22169) 2024-01-30 15:34:31 +09:00
path_from_url_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
performance_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
permissions_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
process_test.ts chore: use FsFile[Symbol.dispose]() (#22007) 2024-01-22 00:20:59 +01:00
progressevent_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
promise_hooks_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
read_dir_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
read_file_test.ts feat: deprecate Deno.resources() (#22059) 2024-01-24 00:27:29 +01:00
read_link_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
read_text_file_test.ts feat: deprecate Deno.resources() (#22059) 2024-01-24 00:27:29 +01:00
README.md chore: fix flaky netListenUnrefAndRef (#16892) 2022-12-02 12:41:52 -05:00
real_path_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
ref_unref_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
remove_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
rename_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
request_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
resources_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
response_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
serve_test.ts fix(ext/http): smarter handling of Accept-Encoding (#22130) 2024-01-26 15:33:55 +00:00
signal_test.ts fix(cli): make signals tests more reliable (#21772) 2024-01-03 07:41:58 -07:00
stat_test.ts feat: deprecate Deno.close() (#22066) 2024-01-24 15:59:55 +01:00
stdio_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
streams_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
structured_clone_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
symlink_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
sync_test.ts feat: deprecate Deno.write() and Deno.writeSync() (#22064) 2024-01-24 16:36:13 +01:00
test_util.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
testing_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
text_encoding_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
timers_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
tls_test.ts refactor: set removal version for Deno.ListenTlsOptions.certFile, Deno.ListenTlsOptions.keyFile and Deno.ConnectTlsOptions.certFile (#22026) 2024-01-23 17:35:23 +01:00
truncate_test.ts feat: deprecate Deno.close() (#22066) 2024-01-24 15:59:55 +01:00
tty_color_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
tty_test.ts feat: Deno.{stdin,stdout,stderr}.isTerminal(), deprecate Deno.isatty() (#22011) 2024-01-24 00:01:56 +01:00
umask_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
url_search_params_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
url_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
urlpattern_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
utime_test.ts revert: Remove deprecations of file sync APIs (#22085) 2024-01-24 23:38:18 +01:00
version_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
wasm_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
webcrypto_test.ts feat(ext/crypto): initial support for p521 in generateKey and importKey (#21815) 2024-01-06 16:48:31 +05:30
webgpu_test.ts feat(unstable): implement navigator.gpu.getPreferredCanvasFormat() (#22149) 2024-01-27 23:10:09 +05:30
websocket_test.ts fix(ext/websocket): pass on uncaught errors in idleTimeout (#21846) 2024-01-09 19:56:54 +05:30
webstorage_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
worker_permissions_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
worker_types.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
write_file_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
write_text_file_test.ts chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00

Deno runtime tests

Files in this directory are unit tests for Deno runtime.

Testing Deno runtime code requires checking API under different runtime permissions. To accomplish this all tests exercised are created using Deno.test() function.

import {} from "./test_util.ts";

Deno.test(function simpleTestFn(): void {
  // test code here
});

Deno.test(
  {
    ignore: Deno.build.os === "windows",
    permissions: { read: true, write: true },
  },
  function complexTestFn(): void {
    // test code here
  },
);

Running tests

There are two ways to run unit_test_runner.ts:

# Run all tests.
cargo run --bin deno -- test --allow-all --unstable --location=http://js-unit-tests/foo/bar cli/tests/unit/

# Run a specific test module
cargo run --bin deno -- test --allow-all --unstable --location=http://js-unit-tests/foo/bar cli/tests/unit/files_test.ts

Http server

target/debug/test_server is required to run when one's running unit tests. During CI it's spawned automatically, but if you want to run tests manually make sure that server is spawned otherwise there'll be cascade of test failures.