![]() Towards #29972 - Converts the polyfill to typescript. - Implement async op. - Allows `Buffer` type path. - Allows [parallel/test-fs-statfs.js](https://github.com/nodejs/node/blob/v24.2.0/test/parallel/test-fs-statfs.js) test to pass. |
||
---|---|---|
.. | ||
runner | ||
.gitignore | ||
add_day_summary_to_month_summary.ts | ||
common.ts | ||
config.toml | ||
deno.json | ||
README.md | ||
run_all_test_unmodified.ts | ||
slack.ts | ||
test.ts | ||
test_runner.rs |
Node compat test directory
This directory includes the tools for running Node.js test cases directly in Deno.
- ./runner/suite/ - vendored Node.js test cases (git submodule at https://github.com/denoland/node_test)
- ./config.toml - has the list of passing Node.js test cases
- ./test.ts - The script entrypoint of node compat test.
If you run single node.js test case, use the command:
./tools/node_compat_tests.js --filter <name of test file>
Configuration file
The config.toml
specifies which tests should pass in Deno and includes
platform-specific and behavioral settings for each test.
Options
Each test entry can include the following optional configuration properties:
-
flaky
(boolean): Marks a test as flaky. It will be run at most 3 times before being considered failed. -
windows
(boolean): Controls whether the test should run on Windows. Defaults totrue
. -
darwin
(boolean): Controls whether the test should run on macOS. Defaults totrue
. -
linux
(boolean): Controls whether the test should run on Linux. Defaults totrue
. -
reason
(string): Optional explanation for why a test is marked as skipped.
Examples
# Should pass on all platforms
"parallel/test-foo.js" = {}
# Test marked as flaky
"parallel/test-bar.js" = { flaky = true }
# Test skipped on all platforms with explanation
"parallel/test-baz.js" = { darwin = false, linux = false, windows = false, reason = "some reason" }
# Test skipped only on Windows
"parallel/test-qux.js" = { windows = false }
Add test case entry to CI check
If you fixed some Node.js compabitility and some test cases started passing,
then add those cases to config.toml
. The items listed in there are checked in
CI check.
Daily test viewer
To see the latest test results of all test cases, visit this site https://node-test-viewer.deno.dev/results/latest