deno/cli/tests/unit
Leo K 2ac031d6fd
feat(unstable): clean environmental variables for subprocess (#11571)
This commit adds "Deno.RunOptions.clearEnv" option, that allows
to clear environmental variables from parent process before spawning
a subprocess.
2021-08-04 21:47:43 +02:00
..
abort_controller_test.ts
blob_test.ts fix: inspecting prototypes of built-ins with custom inspect implementations should not throw (#11308) 2021-07-08 09:43:36 -04:00
body_test.ts chore: align fetch to spec (#10203) 2021-04-20 14:47:22 +02:00
broadcast_channel_test.ts feat(extensions): BroadcastChannel WPT conformance 2021-05-23 15:16:42 +02:00
buffer_test.ts chore: upgrade dependencies (#10094) 2021-04-09 23:35:29 +02:00
build_test.ts
chmod_test.ts
chown_test.ts
console_test.ts fix(extensions/console): left align table entries (#11295) 2021-07-07 08:56:30 -07:00
copy_file_test.ts
custom_event_test.ts
dir_test.ts
dom_exception_test.ts fix: inspecting prototypes of built-ins with custom inspect implementations should not throw (#11308) 2021-07-08 09:43:36 -04:00
error_stack_test.ts
esnext_test.ts fix(tsc): add .at() types manually to tsc (#11443) 2021-07-19 11:56:14 +10:00
event_target_test.ts
event_test.ts fix: make readonly Event properties readonly (#11106) 2021-06-24 14:21:13 -04:00
fetch_test.ts Revert "fix(extensions/fetch): Add Origin header to outgoing requests for fetch (#11557)" (#11565) 2021-08-02 15:56:52 +02:00
file_test.ts fix(extension/file): update File constructor following the spec (#10760) 2021-05-25 22:35:17 +09:00
filereader_test.ts chore: upgrade dependencies (#10094) 2021-04-09 23:35:29 +02:00
files_test.ts chore(runtime): deprecate Deno.copy (#11369) 2021-07-12 19:44:42 +02:00
format_error_test.ts
fs_events_test.ts feat: add FsWatcher interface (#10798) 2021-06-01 15:35:06 +09:00
get_random_values_test.ts
globals_test.ts feat: Deno namespace configurable and unfrozen (#11062) 2021-06-22 07:17:35 +10:00
headers_test.ts chore: align Headers to spec (#10199) 2021-04-19 01:00:13 +02:00
http_test.ts BREAKING(unstable): Rename Deno.WebSocketUpgrade::websocket to socket (#11542) 2021-07-28 13:13:14 +02:00
internals_test.ts
io_test.ts upgrade: deno_lint 0.10.0 (#11374) 2021-07-13 00:04:44 +02:00
link_test.ts
make_temp_test.ts
message_channel_test.ts fix: MessagePort in message for postMessage transfers (#11103) 2021-06-26 11:17:05 +02:00
metrics_test.ts refactor(ops): replace ZeroCopyBuf arg by 2nd generic deserializable arg (#10448) 2021-05-06 19:32:03 +02:00
mkdir_test.ts
navigator_test.ts feat(runtime): implement navigator.hardwareConcurrency (#11448) 2021-07-29 21:45:11 +02:00
net_test.ts chore: fix failing netTcpListenCloseWhileIterating test on some machines (#11552) 2021-07-31 21:10:19 -04:00
opcall_test.ts chore: update deno_lint binary used in CI to v0.5.0 (#10652) 2021-05-18 17:24:01 +02:00
os_test.ts feat(runtime): implement navigator.hardwareConcurrency (#11448) 2021-07-29 21:45:11 +02:00
path_from_url_test.ts
performance_test.ts fix: inspecting prototypes of built-ins with custom inspect implementations should not throw (#11308) 2021-07-08 09:43:36 -04:00
permissions_test.ts
process_test.ts feat(unstable): clean environmental variables for subprocess (#11571) 2021-08-04 21:47:43 +02:00
progressevent_test.ts
read_dir_test.ts
read_file_test.ts feat(core): support AbortSignal in readFile (#10943) 2021-06-22 11:45:26 -04:00
read_link_test.ts
read_text_file_test.ts fix(runtime/readFile*): close resources on error during read (#10059) 2021-04-08 16:36:52 +02:00
README.md test(cli): run unit tests using Deno.test (#10330) 2021-04-27 13:14:01 +02:00
real_path_test.ts feat(runtime): support urls for Deno.realPath and Deno.realPathSync (#10626) 2021-05-17 06:31:21 +02:00
remove_test.ts
rename_test.ts feat(runtime): support URL overloads for Deno.rename/Deno.renameSync (#10512) 2021-06-03 16:14:37 +02:00
request_test.ts fix: inspecting prototypes of built-ins with custom inspect implementations should not throw (#11308) 2021-07-08 09:43:36 -04:00
resources_test.ts
response_test.ts tests: re-enable disabled Response.formData test (#11453) 2021-07-20 00:11:50 +02:00
signal_test.ts fix(runtime/signal): use op_async_unref for op_signal_poll (#11097) 2021-06-25 13:15:35 +09:00
stat_test.ts
stdio_test.ts
streams_deprecated.ts
symlink_test.ts feat(runtime): support URL overloads for Deno.symlink and Deno.symlinkSync (#10664) 2021-06-03 16:16:00 +02:00
sync_test.ts
test_util.ts test(cli): refactor the usages of delay (#11098) 2021-06-25 03:44:14 +02:00
testing_test.ts
text_encoding_test.ts fix: TextEncoder#encodeInto spec compliance + perf gains (#10129) 2021-05-08 23:31:40 +02:00
timers_test.ts test(cli): refactor the usages of delay (#11098) 2021-06-25 03:44:14 +02:00
tls_test.ts fix(tls): flush send buffer in the background after closing TLS stream (#10146) 2021-05-11 03:11:26 +02:00
truncate_test.ts
tty_test.ts
umask_test.ts
url_search_params_test.ts
url_test.ts
utime_test.ts feat(cli): support URL overloads for Deno.utime and Deno.utimeSync (#10792) 2021-05-31 20:05:57 +02:00
version_test.ts feat(cli): upgrade to TypeScript 4.3 (#9960) 2021-05-28 09:33:11 +10:00
wasm_test.ts feat: enable WebAssembly.instantiateStreaming and wasm async compilation (#11200) 2021-07-03 23:33:36 +02:00
webcrypto_test.ts feat(extensions/crypto): implement verify() for RSA (#11312) 2021-07-12 14:45:36 +02:00
webgpu_test.ts chore: update wgpu and realign to spec (#9760) 2021-05-06 16:48:45 +02:00
websocket_test.ts
worker_types.ts
write_file_test.ts
write_text_file_test.ts

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 unitTest() function.

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

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

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

Running tests

There are three ways to run unit_test_runner.ts:

# Run all tests.
target/debug/deno test --allow-all --unstable cli/tests/unit/

# Run a specific test module
target/debug/deno test --allow-all --unstable 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.