1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-24 15:19:26 -05:00
denoland-deno/tests/unit
Tom Alcorn 9f7b0083be
fix(ext/web): fix AbortSignal.timeout() leak (#23842)
<!--
Before submitting a PR, please read
https://docs.deno.com/runtime/manual/references/contributing

1. Give the PR a descriptive title.

  Examples of good title:
    - fix(std/http): Fix race condition in server
    - docs(console): Update docstrings
    - feat(doc): Handle nested reexports

  Examples of bad title:
    - fix #7123
    - update docs
    - fix bugs

2. Ensure there is a related issue and it is referenced in the PR text.
3. Ensure there are tests that cover the changes.
4. Ensure `cargo test` passes.
5. Ensure `./tools/format.js` passes without changing files.
6. Ensure `./tools/lint.js` passes.
7. Open as a draft PR if your work is still in progress. The CI won't
run
   all steps, but you can add '[ci]' to a commit message to force it to.
8. If you would like to run the benchmarks on the CI, add the 'ci-bench'
label.
-->

Fixes #20663.

---------

Co-authored-by: Asher Gomez <ashersaupingomez@gmail.com>
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2024-06-19 01:31:30 +02:00
..
abort_controller_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
blob_test.ts chore: update std submodule to 0.221.0 (#23112) 2024-04-02 12:57:05 +11:00
body_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
broadcast_channel_test.ts chore: use @std import instead of @test_util/std (#22398) 2024-02-13 02:05:10 +00:00
buffer_test.ts chore: update std submodule to 0.221.0 (#23112) 2024-04-02 12:57:05 +11:00
build_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
cache_api_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
chmod_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
chown_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
command_test.ts chore: upgrade dlint to 0.60.0 (#24041) 2024-06-05 01:09:29 +02:00
console_test.ts fix(ext/console): bump default max str lengthto 10_00 (#24245) 2024-06-19 01:31:29 +02:00
copy_file_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
cron_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
custom_event_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
dir_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
dom_exception_test.ts chore(ext/web): use Error.captureStackTrace in DOMException constructor (#23986) 2024-06-05 01:09:13 +02:00
error_stack_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
error_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
esnext_test.ts feat: enable Float16Array support (#23490) 2024-04-23 15:18:27 +00:00
event_source_test.ts fix(ext/fetch): do not truncate field value in EventSource (#22368) 2024-03-25 07:31:13 -07:00
event_target_test.ts chore: upgrade dlint to 0.60.0 (#24041) 2024-06-05 01:09:29 +02:00
event_test.ts fix(runtime): use more null proto objects (#23921) 2024-05-23 00:03:35 +02:00
fetch_test.ts chore: upgrade to reqwest 0.12.4 and rustls 0.22 (#24056) 2024-06-19 01:31:26 +02:00
ffi_test.ts BREAKING(ffi/unstable): use BigInt representation in turbocall (#23983) 2024-05-30 08:00:11 +05:30
file_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
filereader_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
files_test.ts chore: update std submodule to 0.221.0 (#23112) 2024-04-02 12:57:05 +11:00
flock_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
fs_events_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
get_random_values_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
globals_test.ts chore: upgrade dlint to 0.60.0 (#24041) 2024-06-05 01:09:29 +02:00
headers_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
http_test.ts chore: upgrade to reqwest 0.12.4 and rustls 0.22 (#24056) 2024-06-19 01:31:26 +02:00
image_bitmap_test.ts fix(ext/web): properly handle Blob case for createImageBitmap (#23518) 2024-05-07 04:47:42 -07:00
image_data_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
internals_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
intl_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
io_test.ts chore: use @std import instead of @test_util/std (#22398) 2024-02-13 02:05:10 +00:00
jupyter_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
kv_queue_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
kv_queue_test_no_db_close.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
kv_queue_undelivered_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
kv_test.ts chore: update denokv_* crates (#23949) 2024-05-23 16:35:16 +02:00
link_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
make_temp_test.ts fix(ext/fs): make errors in tempfile creation clearer (#22498) 2024-02-21 20:11:04 +00:00
message_channel_test.ts chore: use @std import instead of @test_util/std (#22398) 2024-02-13 02:05:10 +00:00
mkdir_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
navigator_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
net_test.ts feat(ext/net): Refactor TCP socket listeners for future clustering mode (#23037) 2024-04-08 16:18:14 -06:00
network_interfaces_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
ops_test.ts perf(cli): reduce overhead in test registration (#22552) 2024-02-27 20:30:17 -07:00
os_test.ts fix: validate integer values in Deno.exitCode setter (#24068) 2024-06-02 21:29:01 -04:00
path_from_url_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
performance_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
permissions_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
process_test.ts chore(ext/buffer): remove use of deprecated Deno.readAll() (#22874) 2024-03-20 10:39:17 -07:00
progressevent_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
promise_hooks_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
read_dir_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
read_file_test.ts feat(runtime): Allow embedders to perform additional access checks on file open (#23208) 2024-04-19 18:12:03 -06:00
read_link_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
read_text_file_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
README.md chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
real_path_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
ref_unref_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
remove_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
rename_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
request_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
resources_test.ts chore: upgrade dlint to 0.60.0 (#24041) 2024-06-05 01:09:29 +02:00
response_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
serve_test.ts chore: upgrade to reqwest 0.12.4 and rustls 0.22 (#24056) 2024-06-19 01:31:26 +02:00
signal_test.ts fix(runtime): Restore default signal handler after user handlers are unregistered (#22757) 2024-03-11 10:22:28 -07:00
stat_test.ts chore: upgrade dlint to 0.60.0 (#24041) 2024-06-05 01:09:29 +02:00
stdio_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
streams_test.ts fix(ext/web): Prevent (De-)CompressionStream resource leak on stream cancellation (#21199) 2024-02-13 21:45:23 +00:00
structured_clone_test.ts fix(ext/web): Fix structuredClone Web API type declaration (any -> generic) (#22968) 2024-03-25 22:44:49 +01:00
symbol_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
symlink_test.ts fix: Add missing "junction" type for SymlinkOptions.types (#23756) 2024-05-14 15:06:21 +02:00
sync_test.ts chore(ext/io): remove use of deprecated Deno.writeSync() (#22872) 2024-03-20 10:39:25 -07:00
test_util.ts fix(ext/http): flush gzip streaming response (#23991) 2024-05-28 22:46:04 +02:00
testing_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
text_encoding_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
timers_test.ts fix(ext/web): fix AbortSignal.timeout() leak (#23842) 2024-06-19 01:31:30 +02:00
tls_sni_test.ts refactor(ext/tls): Implement required functionality for later SNI support (#23686) 2024-05-09 10:54:47 -06:00
tls_test.ts feat(ext/net): extract TLS key and certificate from interfaces (#23327) 2024-04-18 11:21:08 -06:00
truncate_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
tty_color_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
tty_test.ts chore: upgrade dlint to 0.60.0 (#24041) 2024-06-05 01:09:29 +02:00
umask_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
url_search_params_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
url_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
urlpattern_test.ts chore: use @std import instead of @test_util/std (#22398) 2024-02-13 02:05:10 +00:00
utime_test.ts chore: upgrade dlint to 0.60.0 (#24041) 2024-06-05 01:09:29 +02:00
version_test.ts fix: upgrade TypeScript from 5.4.3 to 5.4.5 (#23740) 2024-05-08 13:54:56 -04:00
wasm_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
webcrypto_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
webgpu_test.ts fix(ext/webgpu): Allow depthClearValue to be undefined when depthLoadOp is not "clear" (#23850) 2024-05-20 13:47:04 -07:00
websocket_test.ts fix(ext/websocket): correctly order messages when sending blobs (#24133) 2024-06-12 17:14:59 -07:00
websocketstream_test.ts.disabled chore: use @std import instead of @test_util/std (#22398) 2024-02-13 02:05:10 +00:00
webstorage_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
worker_permissions_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
worker_test.ts feat(ext/fetch): Request.bytes() and Response.bytes() (#23823) 2024-05-23 00:27:58 +00:00
write_file_test.ts fix(ext/fs): truncate files when a ReadableStream is passed to writeFile (#23330) 2024-05-28 00:14:35 +02:00
write_text_file_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +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.