fa911fc68e
It was shipped in Chrome 66. Bug: v8:4958, v8:8255, v8:8238 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I52fb826f4f245bc6484d8f406ecf99bc17d268ee Reviewed-on: https://chromium-review.googlesource.com/c/1254123 Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Commit-Queue: Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#56350}
28 lines
820 B
Markdown
28 lines
820 B
Markdown
# JavaScript tests with expected output
|
|
|
|
Tests in `test/message` pass if the output matches the expected output.
|
|
Message tests are particularly useful when checking for exact error messages.
|
|
|
|
Tests and their expected output must have the same filename, with the `.js` and
|
|
`.out` extension.
|
|
|
|
```
|
|
foo.js
|
|
foo.out
|
|
```
|
|
|
|
**All tests must end with an exception**. The test runner does not
|
|
handle output from multiple runs, e.g., `--stress-opt`. Without an exception,
|
|
the output will be generated several times and the comparison will fail.
|
|
|
|
You can use a regex in the expected output instead of the exact
|
|
path:
|
|
|
|
```
|
|
*%(basename)s:7: SyntaxError: Detected cycle while resolving name 'a'
|
|
```
|
|
|
|
Empty lines are ignored in the comparison, but whitespaces are not.
|
|
|
|
Exact details of the test runner are in [testcfg.py](testcfg.py).
|