0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-10-30 09:08:00 -04:00
denoland-deno/cli/tests/unit
Nayeem Rahman 45c49034a7
BREAKING(unstable): Improve Deno.spawn() stdio API (#14919)
- "SpawnOutput" extends "ChildStatus" instead of composing it
- "SpawnOutput::stdout", "SpawnOutput::stderr", "Child::stdin", 
"Child::stdout" and "Child::stderr" are no longer optional, instead 
made them getters that throw at runtime if that stream wasn't set 
to "piped". 
- Remove the complicated "<T extends SpawnOptions = SpawnOptions>" 
which we currently need to give proper type hints for the availability of 
these fields. Their typings for these would get increasingly complex 
if it became dependent on more options (e.g. "SpawnOptions::pty" 
which if set should make the stdio streams unavailable)
2022-07-18 15:16:12 +02:00
..
abort_controller_test.ts refactor: remove "unitTest" wrapper from cli/tests/unit (#12750) 2021-11-23 17:45:18 +01:00
blob_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
body_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
broadcast_channel_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
buffer_test.ts chore(serde_v8): throw error when string buffer exceeds v8 max length (#14588) 2022-05-26 17:15:44 +02:00
build_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
chmod_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
chown_test.ts BREAKING(unstable): Improve Deno.spawn() stdio API (#14919) 2022-07-18 15:16:12 +02:00
console_test.ts fix(console): constrol inspect() indent with option (#14867) 2022-06-15 09:52:28 -04:00
copy_file_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
custom_event_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
dir_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
dom_exception_test.ts refactor: remove "unitTest" wrapper from cli/tests/unit (#12750) 2021-11-23 17:45:18 +01:00
error_stack_test.ts BREAKING: Remove unstable Deno.applySourceMap API (#14473) 2022-05-03 18:44:05 +02:00
error_test.ts fix(cli/dts): add NotSupported error type (#13432) 2022-01-20 12:29:37 +09:00
esnext_test.ts feat(cli): update to TypeScript 4.6.2 (#13474) 2022-03-02 07:44:43 +11:00
event_target_test.ts fix(ext/web): add EventTarget brand checking (#14637) 2022-06-17 11:05:02 -04:00
event_test.ts fix(ext/web): remove ErrorEventInit's error default (#14809) 2022-06-29 14:29:08 +02:00
fetch_test.ts fix(ext/fetch): add accept-language default header to fetch (#14882) 2022-06-19 23:33:24 +02:00
ffi_test.ts BREAKING(ext/ffi): Remove Deno.UnsafePointer indirection (#14915) 2022-06-20 19:08:10 +05:30
file_test.ts feat(runtime): web streams in fs & net APIs (#13615) 2022-02-15 13:35:22 +01:00
filereader_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
files_test.ts chore: remove flaky writeSyncWhileAsyncFails test (#15194) 2022-07-13 15:49:20 -04:00
flock_test.ts Remove unstable Deno.sleepSync (#14719) 2022-06-13 21:28:00 +02:00
fs_events_test.ts refactor: remove "unitTest" wrapper from cli/tests/unit (#12750) 2021-11-23 17:45:18 +01:00
get_random_values_test.ts fix(ext/crypto): adjust getRandomValues types (#14714) 2022-06-02 15:15:46 +02:00
globals_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
headers_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
http_test.ts BREAKING(unstable): Improve Deno.spawn() stdio API (#14919) 2022-07-18 15:16:12 +02:00
internals_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
intl_test.ts BREAKING: remove Intl.v8BreakIterator (#14864) 2022-06-15 05:04:30 +02:00
io_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
link_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
make_temp_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
message_channel_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
metrics_test.ts fix(core): op metrics op_names mismatch (#14716) 2022-05-24 22:21:32 +02:00
mkdir_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
navigator_test.ts feat: add userAgent property to Navigator's prototype (#14415) 2022-05-14 12:00:02 +02:00
net_test.ts feat(unstable): add ref/unref to Listener (#13961) 2022-03-23 12:04:20 +09:00
network_interfaces_test.ts feat(unstable): add Deno.networkInterfaces (#13475) 2022-01-24 18:39:28 +09:00
opcall_test.ts refactor: remove "unitTest" wrapper from cli/tests/unit (#12750) 2021-11-23 17:45:18 +01:00
os_test.ts BREAKING(unstable): Improve Deno.spawn() stdio API (#14919) 2022-07-18 15:16:12 +02:00
path_from_url_test.ts refactor: remove "unitTest" wrapper from cli/tests/unit (#12750) 2021-11-23 17:45:18 +01:00
performance_test.ts fix: make Performance global an EventTarget 2022-06-16 12:05:33 -04:00
permissions_test.ts fix(runtime): improve permission descriptor validation (#14676) 2022-05-19 17:45:09 -04:00
process_test.ts fix(core): don't panic on non-existent cwd (#14957) 2022-06-25 09:21:58 +05:30
progressevent_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
read_dir_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
read_file_test.ts perf(runtime): read entire files in single ops (#14261) 2022-04-27 16:03:44 +02:00
read_link_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
read_text_file_test.ts feat: support abort reasons in Deno APIs and WebSocketStream (#13066) 2021-12-16 12:57:26 +01:00
README.md refactor: remove "unitTest" wrapper from cli/tests/unit (#12750) 2021-11-23 17:45:18 +01:00
real_path_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
ref_unref_test.ts refactor(core): validate promise id in refOp (#13905) 2022-03-12 01:18:49 +09:00
remove_test.ts BREAKING(unstable): Improve Deno.spawn() stdio API (#14919) 2022-07-18 15:16:12 +02:00
rename_test.ts chore: upgrade test_util/std/ submodule (#14722) 2022-05-25 21:53:53 +02:00
request_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
resources_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
response_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
signal_test.ts BREAKING(unstable): Improve Deno.spawn() stdio API (#14919) 2022-07-18 15:16:12 +02:00
spawn_test.ts BREAKING(unstable): Improve Deno.spawn() stdio API (#14919) 2022-07-18 15:16:12 +02:00
stat_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
stdio_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
streams_deprecated.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
structured_clone_test.ts fix(core): Don't override structured clone error messages from V8 (#13942) 2022-03-14 19:35:15 +01:00
symlink_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
sync_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
test_util.ts BREAKING(unstable): Improve Deno.spawn() stdio API (#14919) 2022-07-18 15:16:12 +02:00
testing_test.ts feat(test): Add "name", "origin" and "parent" to "Deno.TestContext" (#14007) 2022-04-06 16:51:38 +02:00
text_encoding_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
timers_test.ts Remove unstable Deno.sleepSync (#14719) 2022-06-13 21:28:00 +02:00
tls_test.ts BREAKING(unstable): Improve Deno.spawn() stdio API (#14919) 2022-07-18 15:16:12 +02:00
truncate_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
tty_color_test.ts refactor: use spawn API across codebase (#14414) 2022-05-18 22:00:11 +02:00
tty_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
umask_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
url_search_params_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
url_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
urlpattern_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
utime_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
version_test.ts feat(cli): update to TypeScript 4.5 (#12410) 2021-12-10 09:12:21 +11:00
wasm_test.ts chore(wasm): Don't await on the argument to handleWasmStreaming (#14000) 2022-03-29 14:44:33 +02:00
webcrypto_test.ts feat(ext/crypto): export elliptic keys as "raw" (#14764) 2022-06-08 08:29:42 +05:30
webgpu_test.ts chore: disable wgpu tests in WSL (#14157) 2022-03-30 20:56:28 -04:00
websocket_test.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
worker_permissions_test.ts BREAKING(unstable): Enable Deno namespace in workers by default (#14581) 2022-05-17 22:27:17 +02:00
worker_types.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
write_file_test.ts perf: move Deno.writeTextFile and like functions to Rust (#14221) 2022-04-18 18:00:14 -04:00
write_text_file_test.ts perf: move Deno.writeTextFile and like functions to Rust (#14221) 2022-04-18 18:00:14 -04: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.
target/debug/deno test --allow-all --unstable --location=http://js-unit-tests/foo/bar cli/tests/unit/

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