1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-22 15:06:54 -05:00
denoland-deno/cli/tests/unit
Bartek Iwańczuk 1246a433f8
fix: poll connection after writing response chunk in Deno.serveHttp() (#10961)
This commit changes "op_http_response_write" to first send response chunk
and then poll the underlying HTTP connection.

Previously after writing a chunk of response HTTP connection wasn't polled
and thus data wasn't written to the socket until after next op interacting 
with the connection.
2021-06-14 22:10:55 +02:00
..
abort_controller_test.ts feat(fmt): Sort named import and export specifiers (#7711) 2020-09-27 12:22:32 +02:00
blob_test.ts chore: update std submodule (#10017) 2021-04-05 15:57:52 +02: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 chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
chmod_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
chown_test.ts chore: Enforce ban-untagged-todo lint rule (#9135) 2021-01-17 00:32:59 +01:00
console_test.ts fix(console): circular customInspect (#10338) 2021-04-27 11:54:47 +02:00
copy_file_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
custom_event_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
dir_test.ts refactor: clean up permission handling (#9367) 2021-03-17 17:45:12 -04:00
error_stack_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
event_target_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
event_test.ts fix: webidl utils and align Event to spec (#9470) 2021-02-13 15:58:12 +01:00
fetch_test.ts fix(fetch): make prototype properties writable (#10769) 2021-05-26 23:44:42 +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: upgrade dependencies (#10094) 2021-04-09 23:35:29 +02:00
format_error_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
fs_events_test.ts feat: add FsWatcher interface (#10798) 2021-06-01 15:35:06 +09:00
get_random_values_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
globals_test.ts chore: upgrade dependencies (#10094) 2021-04-09 23:35:29 +02:00
headers_test.ts chore: align Headers to spec (#10199) 2021-04-19 01:00:13 +02:00
http_test.ts fix: poll connection after writing response chunk in Deno.serveHttp() (#10961) 2021-06-14 22:10:55 +02:00
internals_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
io_test.ts chore: deprecate Deno.Buffer and read/write utils (#9793) 2021-04-06 00:05:36 +02:00
link_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
make_temp_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01: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 chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
net_test.ts revert: Conn type changes in #10012 and #10061 (#10255) 2021-04-20 10:12:33 +10: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 refactor: clean up permission handling (#9367) 2021-03-17 17:45:12 -04:00
path_from_url_test.ts feat(fmt): Sort named import and export specifiers (#7711) 2020-09-27 12:22:32 +02:00
performance_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
permissions_test.ts feat(runtime): stabilise permissions and add event target capabilities (#9573) 2021-02-25 14:33:09 +11:00
process_test.ts refactor: make Process#kill() throw sensible errors on Windows (#9111) 2021-01-14 10:26:59 -08:00
progressevent_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
read_dir_test.ts fix(runtime): do not panic on irregular dir entries (#9579) 2021-02-25 05:16:18 -05:00
read_file_test.ts fix(runtime/readFile*): close resources on error during read (#10059) 2021-04-08 16:36:52 +02:00
read_link_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
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 chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
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(op_crates/fetch): Prevent throwing when inspecting a request (#10335) 2021-04-23 20:38:45 +02:00
resources_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
response_test.ts fix(fetch): Response inspect regression (#10295) 2021-04-21 23:03:04 +02:00
signal_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
stat_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
stdio_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
streams_deprecated.ts fix(op_crate/fetch): add back ReadableStream.getIterator and deprecate (#9146) 2021-01-18 10:40:39 +11:00
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 chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
test_util.ts test(cli): run unit tests using Deno.test (#10330) 2021-04-27 13:14:01 +02:00
testing_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
text_encoding_test.ts fix: TextEncoder#encodeInto spec compliance + perf gains (#10129) 2021-05-08 23:31:40 +02:00
timers_test.ts chore: upgrade crates (#10559) 2021-05-10 22:39:16 +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 chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
tty_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
umask_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
url_search_params_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
url_test.ts test(op_crates/web): add regression tests for past URL bugs (#9639) (#9639) 2021-03-02 19:09:58 +01:00
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
webgpu_test.ts chore: update wgpu and realign to spec (#9760) 2021-05-06 16:48:45 +02:00
websocket_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
worker_types.ts chore: Reorganise workers tests (#9493) 2021-02-15 14:48:47 +01:00
write_file_test.ts chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
write_text_file_test.ts feat(fmt): Sort named import and export specifiers (#7711) 2020-09-27 12:22:32 +02: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 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.