deno/cli/tests/unit
Bartek Iwańczuk 28576db10e
refactor: don't expose some ops (#22281)
This commit brings down the number of ops exposed to user
code to 51.
2024-02-06 02:47:10 +01: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: don't expose some ops (#22281) 2024-02-06 02:47:10 +01: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 refactor: don't expose ops to user code (#22273) 2024-02-06 00:26:36 +01: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.