0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-03-04 09:57:11 -05:00
deno/tests/unit
Bartek Iwańczuk 7d8a8a0461
fix(ext/http): flush gzip streaming response (#23991)
This commit changes `gzip` compression in `Deno.serve` API to flush data
after each write. There's a slight performance regression, but provided
test shows a scenario that was not possible before.

---------

Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2024-05-28 22:46:04 +02:00
..
abort_controller_test.ts
blob_test.ts chore: update std submodule to 0.221.0 (#23112) 2024-04-02 12:57:05 +11:00
body_test.ts
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
cache_api_test.ts
chmod_test.ts
chown_test.ts
command_test.ts chore(ext/buffer): remove use of deprecated Deno.readAll() (#22874) 2024-03-20 10:39:17 -07:00
console_test.ts chore: use @std import instead of @test_util/std (#22398) 2024-02-13 02:05:10 +00:00
copy_file_test.ts
cron_test.ts
custom_event_test.ts
dir_test.ts
dom_exception_test.ts fix: DOMException doesn't throw on __callSitesEvals (#23729) 2024-05-07 21:02:29 +00:00
error_stack_test.ts
error_test.ts
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
event_test.ts fix(runtime): use more null proto objects (#23921) 2024-05-23 00:03:35 +02:00
fetch_test.ts feat(ext/fetch): Request.bytes() and Response.bytes() (#23823) 2024-05-23 00:27:58 +00:00
ffi_test.ts chore: move cli/tests/ -> tests/ (#22369) 2024-02-10 20:22:13 +00:00
file_test.ts
filereader_test.ts
files_test.ts chore: update std submodule to 0.221.0 (#23112) 2024-04-02 12:57:05 +11:00
flock_test.ts
fs_events_test.ts
get_random_values_test.ts
globals_test.ts
headers_test.ts
http_test.ts feat(ext/fetch): Request.bytes() and Response.bytes() (#23823) 2024-05-23 00:27:58 +00: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
internals_test.ts
intl_test.ts
io_test.ts chore: use @std import instead of @test_util/std (#22398) 2024-02-13 02:05:10 +00:00
jupyter_test.ts
kv_queue_test.ts
kv_queue_test_no_db_close.ts
kv_queue_undelivered_test.ts
kv_test.ts chore: update denokv_* crates (#23949) 2024-05-23 16:35:16 +02:00
link_test.ts
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
navigator_test.ts
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
ops_test.ts perf(cli): reduce overhead in test registration (#22552) 2024-02-27 20:30:17 -07:00
os_test.ts
path_from_url_test.ts
performance_test.ts
permissions_test.ts
process_test.ts chore(ext/buffer): remove use of deprecated Deno.readAll() (#22874) 2024-03-20 10:39:17 -07:00
progressevent_test.ts
promise_hooks_test.ts
read_dir_test.ts
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
read_text_file_test.ts
README.md
real_path_test.ts
ref_unref_test.ts
remove_test.ts
rename_test.ts
request_test.ts
resources_test.ts
response_test.ts
serve_test.ts fix(ext/http): flush gzip streaming response (#23991) 2024-05-28 22:46:04 +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
stdio_test.ts
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
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
text_encoding_test.ts
timers_test.ts chore(tests): update flaky timer test (#22701) 2024-03-05 08:15:51 +05:30
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
tty_color_test.ts
tty_test.ts
umask_test.ts
url_search_params_test.ts
url_test.ts
urlpattern_test.ts chore: use @std import instead of @test_util/std (#22398) 2024-02-13 02:05:10 +00:00
utime_test.ts
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
webcrypto_test.ts
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
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
worker_permissions_test.ts
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

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.