test-js - run the LibJS test suite
$ test-js [options...] [path]
test-js
runs the LibJS test suite located in /home/anon/Test/js-tests
. These tests are using a custom JavaScript testing framework inspired by Jest (see test-common.js
).
It also supports the test262 parser tests.
The test root directory is assumed to be /home/anon/Tests/js-tests
, or $SERENITY_SOURCE_DIR/Userland/Libraries/LibJS/Tests
when using the Lagom build. Optionally you can pass a custom path to test-js
to override these defaults.
You can disable output from dbgln()
calls by setting the DISABLE_DBG_OUTPUT
environment variable.
-t
, --show-time
: Show duration of each test-p
, --show-progress
: Show progress with OSC 9 (true, false)-j
, --json
: Show results as JSON--per-file
: Show detailed per-file results as JSON (implies -j)-g
, --collect-often
: Collect garbage after every allocation-b
, --run-bytecode
: Use the bytecode interpreter-d
, --dump-bytecode
: Dump the bytecode-f glob
, --filter glob
: Only run tests matching the given glob--test262-parser-tests
: Run test262 parser testsA very simple test looks like this:
describe("Examples from Gary Bernhardt's 'Wat' talk", () => {
test("Na na na na na na na na na na na na na na na na Batman!", () => {
expect(Array(16).join("wat" - 1) + " Batman!").toBe(
"NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN Batman!"
;
);
}); })