1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-01 16:51:13 -05:00
denoland-deno/cli/tests/unit
Matt Mastracci 936d265f8a
perf: remove opAsync (#21690)
`opAsync` requires a lookup by name on each async call. This is a
mechanical translation of all opAsync calls to ensureFastOps.

The `opAsync` API on Deno.core will be removed at a later time.
2024-01-04 20:34:48 +01:00
..
abort_controller_test.ts
blob_test.ts
body_test.ts fix(ext/formdata): support multiple headers in FormData (#20801) 2023-10-05 19:28:44 +02:00
broadcast_channel_test.ts chore: update std to 0.208.0 (#21318) 2023-12-02 03:20:06 +01:00
buffer_test.ts
build_test.ts
cache_api_test.ts fix(dts): make globals available on globalThis (#19438) 2023-07-03 14:36:55 -04:00
chmod_test.ts
chown_test.ts chore: fix typos (#19572) 2023-06-26 09:10:27 -04:00
command_test.ts feat: disposable Deno resources (#20845) 2023-11-01 20:26:12 +01:00
console_test.ts fix(console): inspect for {Set,Map}Iterator and Weak{Set,Map} (#21554) 2023-12-19 15:05:49 +09:00
copy_file_test.ts
cron_test.ts perf: remove opAsync (#21690) 2024-01-04 20:34:48 +01:00
custom_event_test.ts
dir_test.ts
dom_exception_test.ts fix(ext,runtime): add missing custom inspections (#21219) 2023-11-19 09:13:38 +01:00
error_stack_test.ts
error_test.ts fix: add WouldBlock error (#17339) 2023-02-12 23:14:33 +01:00
esnext_test.ts
event_target_test.ts fix(ext/web): Copy EventTarget list before dispatch (#19360) 2023-06-04 18:03:44 -06:00
event_test.ts perf(ext/event): optimize Event constructor (#20181) 2023-08-17 10:35:18 +02:00
fetch_test.ts feat(ext/fetch): allow Deno.HttpClient to be declared with using (#21453) 2023-12-06 16:52:59 +09:00
ffi_test.ts perf(ext/ffi): switch from middleware to tasks (#21239) 2023-12-12 03:10:33 +00:00
file_test.ts feat(ext/web): Add name to Deno.customInspect of File objects (#20415) 2023-09-14 07:06:58 +02:00
filereader_test.ts
files_test.ts feat: disposable Deno resources (#20845) 2023-11-01 20:26:12 +01:00
flock_test.ts chore(core): fix flaky flock_test on windows (#19477) 2023-06-12 20:30:29 +00:00
fs_events_test.ts feat: disposable Deno resources (#20845) 2023-11-01 20:26:12 +01:00
get_random_values_test.ts
globals_test.ts fix: add missing Object.groupBy() and Map.groupBy() types (#21050) 2023-11-01 23:18:41 +00:00
headers_test.ts fix(core): introduce SafeRegExp to primordials (#17592) 2023-03-01 08:14:16 +09:00
http_test.ts refactor: replace deferred() from std/async with Promise.withResolvers() (#21234) 2023-11-22 12:11:20 +01:00
image_data_test.ts feat(ext/web): add ImageData Web API (#21183) 2023-12-06 14:20:28 +01:00
internals_test.ts
intl_test.ts
io_test.ts
jupyter_test.ts feat(unstable): add Deno.jupyter.display API (#20819) 2023-10-12 22:32:38 +00:00
kv_queue_test.ts fix(ext/kv): throw error if already closed (#21459) 2023-12-05 10:16:47 -08:00
kv_queue_test_no_db_close.ts chore(cli): Migrate some unit tests to "Promise.withResolvers()" (#21128) 2023-11-10 14:29:09 -07:00
kv_queue_undelivered_test.ts feat(ext/kv) add backoffSchedule to enqueue (#21474) 2023-12-12 22:51:23 -08:00
kv_test.ts fix(unstable): kv watch should stop when db is closed (#21665) 2024-01-04 20:34:46 +01:00
link_test.ts
make_temp_test.ts
message_channel_test.ts chore: update std to 0.208.0 (#21318) 2023-12-02 03:20:06 +01:00
mkdir_test.ts
navigator_test.ts
net_test.ts chore(cli): Migrate some unit tests to "Promise.withResolvers()" (#21128) 2023-11-10 14:29:09 -07:00
network_interfaces_test.ts
opcall_test.ts chore: update std to 0.208.0 (#21318) 2023-12-02 03:20:06 +01:00
os_test.ts
path_from_url_test.ts
performance_test.ts chore(cli): Migrate some unit tests to "Promise.withResolvers()" (#21128) 2023-11-10 14:29:09 -07:00
permissions_test.ts feat: Add sync APIs for "Deno.permissions" (#17019) 2023-01-25 00:42:44 +01:00
process_test.ts feat(lint): add Deno.run to no-deprecated-deno-api (#18869) 2023-04-27 02:52:52 +00:00
progressevent_test.ts
promise_hooks_test.ts refactor: remove Deno.core (#16881) 2023-01-24 18:54:10 +01:00
read_dir_test.ts
read_file_test.ts fix(runtime): Extract error code for all OS error variants (#17958) 2023-03-19 00:01:50 +00:00
read_link_test.ts
read_text_file_test.ts Revert "refactor: don't expose Deno[Deno.internal].core namespace" (#18881) 2023-04-28 00:37:03 +02:00
README.md
real_path_test.ts
ref_unref_test.ts perf: remove knowledge of promise IDs from deno (#21132) 2023-11-09 13:57:26 -07:00
remove_test.ts
rename_test.ts chore(cli): Fix rename test for XFS (#21215) 2023-11-17 15:24:10 -07:00
request_test.ts
resources_test.ts chore(cli): One Rust test per JS and Node unit test file (#19199) 2023-05-22 13:35:59 -06:00
response_test.ts
serve_test.ts chore: update std to 0.208.0 (#21318) 2023-12-02 03:20:06 +01:00
signal_test.ts chore(cli): unflake signal test (#21185) 2023-11-13 18:45:48 +00:00
stat_test.ts refactor(core): Extract deno_core (#19658) 2023-07-02 00:00:14 +00:00
stdio_test.ts
streams_test.ts refactor: use resourceForReadableStream for fetch (#20217) 2023-12-01 08:56:10 -07:00
structured_clone_test.ts
symlink_test.ts
sync_test.ts
test_util.ts chore: update std to 0.208.0 (#21318) 2023-12-02 03:20:06 +01:00
testing_test.ts fix(test): allow explicit undefined for boolean test options (#18786) 2023-04-21 15:32:37 +02:00
text_encoding_test.ts chore(ext/web): use a non-resource stream for textDecoderStreamCleansUpOnCancel (#21181) 2023-11-13 11:35:48 -07:00
timers_test.ts chore(cli): Migrate some unit tests to "Promise.withResolvers()" (#21128) 2023-11-10 14:29:09 -07:00
tls_test.ts refactor: replace deferred() from std/async with Promise.withResolvers() (#21234) 2023-11-22 12:11:20 +01:00
truncate_test.ts
tty_color_test.ts fix: Deno.noColor should not be true when NO_COLOR is empty string (#21275) 2023-11-20 15:58:22 -05:00
tty_test.ts
umask_test.ts
url_search_params_test.ts chore: fix typos (#19572) 2023-06-26 09:10:27 -04:00
url_test.ts fix(ext/url): throw TypeError for empty argument (#18896) 2023-04-30 12:24:34 +02:00
urlpattern_test.ts fix(dts): URLPatternComponentResult groups should have possibly undefined key values (#18643) 2023-04-26 19:15:25 -04:00
utime_test.ts
version_test.ts feat: TypeScript 5.3 (#21480) 2023-12-06 18:49:34 -05:00
wasm_test.ts
webcrypto_test.ts fix(ext/crypto): correctly limit ECDSA and hash algorithms (#18030) 2023-03-05 12:34:07 +00:00
webgpu_test.ts feat: bring back WebGPU (#20812) 2023-12-09 01:19:16 +01:00
websocket_test.ts fix(websockets): server socket field initialization (#21433) 2023-12-13 14:21:34 +00:00
webstorage_test.ts fix(ext/web): webstorage has trap for symbol (#21090) 2023-11-14 07:01:15 +01:00
worker_permissions_test.ts chore(cli): Migrate some unit tests to "Promise.withResolvers()" (#21128) 2023-11-10 14:29:09 -07:00
worker_types.ts
write_file_test.ts fix(ops): Always close cancel handles for read_async/write_async (#17736) 2023-02-11 14:19:13 +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.