With improvements in V8, using separate emit functions is no longer necessary and can instead be replaced by the spread operator. improvement confidence p.value events/ee-emit.js n=2000000 2.98 % 0.09852489 events/ee-emit-2-args.js n=2000000 4.19 % *** 0.0001914216 events/ee-emit-6-args.js n=2000000 61.69 % *** 6.611964e-35 events/ee-emit-diff-args.js n=2000000 -0.36 % 0.305069 events/ee-once.js n=20000000 6.42 % *** 1.27831e-06 PR-URL: https://github.com/nodejs/node/pull/16869 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Evan Lucas <evanlucas@me.com> Reviewed-By: Bryan English <bryan@bryanenglish.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Timothy Gu <timothygu99@gmail.com> Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com> Reviewed-By: Benedikt Meurer <benedikt.meurer@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Brian White <mscdex@mscdex.net> |
||
|---|---|---|
| .. | ||
| abort | ||
| addons | ||
| addons-napi | ||
| async-hooks | ||
| cctest | ||
| common | ||
| doctool | ||
| es-module | ||
| fixtures | ||
| gc | ||
| internet | ||
| known_issues | ||
| message | ||
| parallel | ||
| pseudo-tty | ||
| pummel | ||
| sequential | ||
| testpy | ||
| tick-processor | ||
| timers | ||
| .eslintrc.yaml | ||
| README.md | ||
Node.js Core Tests
This directory contains code and data used to test the Node.js implementation.
For a detailed guide on how to write tests in this directory, see the guide on writing tests.
On how to run tests in this directory, see the contributing guide.
Test Directories
| Directory | Runs on CI | Purpose |
|---|---|---|
| abort | Yes | Tests for when the --abort-on-uncaught-exception flag is used. |
| addons | Yes | Tests for addon functionality along with some tests that require an addon to function properly. |
| cctest | Yes | C++ test that is run as part of the build process. |
| common | Common modules shared among many tests. Documentation | |
| es-module | Yes | Test ESM module loading. |
| fixtures | Test fixtures used in various tests throughout the test suite. | |
| gc | No | Tests for garbage collection related functionality. |
| internet | No | Tests that make real outbound connections (mainly networking related modules). Tests for networking related modules may also be present in other directories, but those tests do not make outbound connections. |
| known_issues | Yes | Tests reproducing known issues within the system. All tests inside of this directory are expected to fail consistently. If a test doesn't fail on certain platforms, those should be skipped via known_issues.status. |
| message | Yes | Tests for messages that are output for various conditions (console.log, error messages etc.) |
| parallel | Yes | Various tests that are able to be run in parallel. |
| pseudo-tty | Yes | Tests that require stdin/stdout/stderr to be a TTY. |
| pummel | No | Various tests for various modules / system functionality operating under load. |
| sequential | Yes | Various tests that are run sequentially. |
| testpy | Test configuration utility used by various test suites. | |
| tick-processor | No | Tests for the V8 tick processor integration. The tests are for the logic in lib/internal/v8_prof_processor.js and lib/internal/v8_prof_polyfill.js. The tests confirm that the profile processor packages the correct set of scripts from V8 and introduces the correct platform specific logic. |
| timers | No | Tests for timing utilities (setTimeout and setInterval). |
When a new test directory is added, make sure to update the CI_JS_SUITES
variable in the Makefile and the js_test_suites variable in
vcbuild.bat.