tenfourfox/js/src/tests
2018-10-02 11:34:30 -07:00
..
ecma hello FPR 2017-04-19 00:56:45 -07:00
ecma_2 hello FPR 2017-04-19 00:56:45 -07:00
ecma_3 #399: change JS date 2-digit year base 2017-08-17 18:02:23 -07:00
ecma_3_1 hello FPR 2017-04-19 00:56:45 -07:00
ecma_5 Bug 1071646 - Make functions block-scoped in JS and implement Annex B semantics for compatibility. (r=jorendorff) 2017-05-09 12:23:48 -07:00
ecma_6 #392: Symbol.toStringTag M1114580 (w/o ESClassValue change; w/45ESR boilerplate) 2018-10-02 11:34:30 -07:00
ecma_7 #509: tests 2018-07-08 09:23:34 -07:00
Intl hello FPR 2017-04-19 00:56:45 -07:00
js1_1 hello FPR 2017-04-19 00:56:45 -07:00
js1_2 hello FPR 2017-04-19 00:56:45 -07:00
js1_3 hello FPR 2017-04-19 00:56:45 -07:00
js1_4 hello FPR 2017-04-19 00:56:45 -07:00
js1_5 #399: change JS date 2-digit year base 2017-08-17 18:02:23 -07:00
js1_6 #430: refactor for loops from M1233249 2017-08-19 21:16:16 -07:00
js1_7 #430: remove parenthesized yield expression requirement M1250589 2017-08-22 06:27:13 -07:00
js1_8 #430: fix reversions with legacy generators, restore/new tests 2017-08-25 16:22:18 -07:00
js1_8_1 #430: implement destructuring default arguments from M932080 +test changes 2017-08-23 20:48:44 -07:00
js1_8_5 #392: Symbol.toStringTag M1114580 (w/o ESClassValue change; w/45ESR boilerplate) 2018-10-02 11:34:30 -07:00
lib hello FPR 2017-04-19 00:56:45 -07:00
shell hello FPR 2017-04-19 00:56:45 -07:00
style hello FPR 2017-04-19 00:56:45 -07:00
supporting hello FPR 2017-04-19 00:56:45 -07:00
test262 hello FPR 2017-04-19 00:56:45 -07:00
browser.js hello FPR 2017-04-19 00:56:45 -07:00
compare_bench.py hello FPR 2017-04-19 00:56:45 -07:00
dupl-prop-changes.diff hello FPR 2017-04-19 00:56:45 -07:00
function-arguments-caller-changes.diff hello FPR 2017-04-19 00:56:45 -07:00
js-test-driver-begin.js hello FPR 2017-04-19 00:56:45 -07:00
js-test-driver-end.js hello FPR 2017-04-19 00:56:45 -07:00
jsreftest.html hello FPR 2017-04-19 00:56:45 -07:00
jstests.list hello FPR 2017-04-19 00:56:45 -07:00
jstests.py hello FPR 2017-04-19 00:56:45 -07:00
Makefile.in hello FPR 2017-04-19 00:56:45 -07:00
moz.build hello FPR 2017-04-19 00:56:45 -07:00
parsemark.py hello FPR 2017-04-19 00:56:45 -07:00
README.txt hello FPR 2017-04-19 00:56:45 -07:00
shell.js hello FPR 2017-04-19 00:56:45 -07:00
update-test262.sh hello FPR 2017-04-19 00:56:45 -07:00
user.js hello FPR 2017-04-19 00:56:45 -07:00

JS Test Suite Readme
====================

The JS test suite is a fairly extensive collection of correctness and regression
tests for the Spidermonkey engine. Two harnesses run these tests: the shell test
harness in this directory and the "reftest" harness built into the browser, used
by Tinderbox. The browser reftests require additional manifest files; these are
generated automatically by the build phase 'package-tests' using the
'--make-manifests' option to jstests.py.

Creating a test
---------------
For general information, see
https://developer.mozilla.org/en-US/docs/SpiderMonkey/Creating_JavaScript_tests

Adding a test
-------------
    Drop it in an appropriate directory under the tests directory.

        <fineprint> Some names are forbidden. Do not name your test browser.js,
        shell.js, jsref.js, template.js, user.js, js-test-driver-begin.js, or
        js-test-driver-end.js, or any of the names of the files in supporting/.
        </fineprint>

Adjusting when and how a test runs
----------------------------------
    Put a comment at the top of the header matching the format:
        // |reftest| <failure-type> -- <comment>

    Where <failure-type> is a standard reftest <failure-type> string, as documented by:
        http://mxr.mozilla.org/mozilla-central/source/layout/tools/reftest/README.txt

    Example:
        // |reftest| skip-if(!xulRuntime.shell) -- does not always dismiss alert

        <fineprint> Either // or /* */ style comments may be used. The entire
        comment must appear in the first 512 bytes of the file. The control
        string must be in its own comment block. </fineprint>

    When adding such comments to individual files is not feasible (e.g., for
    imported tests), reftest manifest entries can be added to jstests.list
    instead. Combining in-file comments with entries in this manifest file for
    the same files is not supported (the one from the manifest file will be
    used). Only the following two forms are supported:
        <failure-type> include <relative_path>
        <failure-type> script <relative_path>
    The <type> "include" indicates that <failure-type> should apply to all test
    cases within a directory. A statement for a nested directory or script
    overrides one for an enclosing directory.

Running tests
-------------
See
https://developer.mozilla.org/en-US/docs/SpiderMonkey/Running_Automated_JavaScript_Tests