v8/test/message
Clemens Hammacher bbb26b5f75 Reland "Reland "[d8][wasm] Test wasm compilation completion""
The deadlock should be fixed with https://crrev.com/c/1002174.

This is a reland of 4d1c2907d3

Original change's description:
> Reland "[d8][wasm] Test wasm compilation completion"
>
> This is a reland of ed2605f040
>
> Original change's description:
> > [d8][wasm] Test wasm compilation completion
> >
> > d8 was recently changed to keep running until wasm compilation has
> > completed. This adds a message test to test that.
> >
> > R=ahaas@chromium.org
> >
> > Change-Id: I73af53b6df4ee5f9a6afd26cf2d71a269140465f
> > Reviewed-on: https://chromium-review.googlesource.com/966184
> > Reviewed-by: Andreas Haas <ahaas@chromium.org>
> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#52008}
>
> Change-Id: Iadbd5056dfa58da454956c4e89369af8b0455b35
> Reviewed-on: https://chromium-review.googlesource.com/975242
> Reviewed-by: Andreas Haas <ahaas@chromium.org>
> Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#52154}

Bug: chromium:824681
Change-Id: I4077645bcfcb2320f6573bb779027add36feee3f
Reviewed-on: https://chromium-review.googlesource.com/999632
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52505}
2018-04-10 08:24:27 +00:00
..
fail [ignition] Set correct expression position for ObjectLiteral keys/values 2018-03-15 15:36:41 +00:00
mjsunit/fail [cleanup] Add message test for assertTrue in mjsunit.js 2018-02-21 15:55:54 +00:00
regress/fail Remove always-on --harmony-template-escapes flag 2017-11-28 18:36:41 +00:00
asm-assignment-undeclared.js
asm-assignment-undeclared.out
asm-function-mismatch-def.js
asm-function-mismatch-def.out
asm-function-mismatch-use.js
asm-function-mismatch-use.out
asm-function-redefined.js
asm-function-redefined.out
asm-function-undefined.js
asm-function-undefined.out
asm-function-variable-collision.js
asm-function-variable-collision.out
asm-import-wrong-annotation.js
asm-import-wrong-annotation.out
asm-import-wrong-object.js
asm-import-wrong-object.out
asm-linking-bogus-heap.js
asm-linking-bogus-heap.out
asm-linking-bogus-stdlib.js
asm-linking-bogus-stdlib.out
asm-linking-missing-heap.js
asm-linking-missing-heap.out
asm-missing-parameter-annotation.js
asm-missing-parameter-annotation.out
asm-missing-return-annotation.js
asm-missing-return-annotation.out
asm-table-mismatch-def.js
asm-table-mismatch-def.out
asm-table-mismatch-use.js
asm-table-mismatch-use.out
asm-table-redefined.js
asm-table-redefined.out
asm-table-undefined.js
asm-table-undefined.out
asm-table-variable-collision.js
asm-table-variable-collision.out
BUILD.gn [build] Add data deps for d8 test suites 2018-03-26 13:44:58 +00:00
message.status [wasm] Distinguish Liftoff code from Turbofan code 2018-01-17 13:59:08 +00:00
non-use-strict-hex-escape.js
non-use-strict-hex-escape.out
non-use-strict-octal-escape.js
non-use-strict-octal-escape.out
non-use-strict-uhex-escape.js
non-use-strict-uhex-escape.out
nonstrict-arguments.js
nonstrict-arguments.out
nonstrict-eval.js
nonstrict-eval.out
nonstrict-with.js
nonstrict-with.out
object-binding-pattern-await-computed-name.js [parser] classify binding pattern errors when parsing await expression 2017-12-09 16:29:23 +00:00
object-binding-pattern-await-computed-name.out [parser] classify binding pattern errors when parsing await expression 2017-12-09 16:29:23 +00:00
README.md
strict-octal-indirect-regexp.js
strict-octal-indirect-regexp.out
strict-octal-regexp.js
strict-octal-regexp.out
testcfg.py [test] Remove context usage from test processors 2018-02-01 10:35:02 +00:00
try-catch-finally-no-message.js
try-catch-finally-no-message.out
try-catch-finally-return-in-finally.js
try-catch-finally-return-in-finally.out
try-finally-return-in-finally.js
try-finally-return-in-finally.out
wasm-finish-compilation.js Reland "Reland "[d8][wasm] Test wasm compilation completion"" 2018-04-10 08:24:27 +00:00
wasm-finish-compilation.out Reland "Reland "[d8][wasm] Test wasm compilation completion"" 2018-04-10 08:24:27 +00:00
wasm-function-name-async.js [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-function-name-async.out [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-function-name-streaming.js [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-function-name-streaming.out [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-module-and-function-name-async.js [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-module-and-function-name-async.out [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-module-and-function-name-streaming.js [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-module-and-function-name-streaming.out [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-module-name-async.js [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-module-name-async.out [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-module-name-streaming.js [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-module-name-streaming.out [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-no-name-async.js [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-no-name-async.out [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-no-name-streaming.js [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-no-name-streaming.out [wasm] Load module name during streaming compile 2018-03-16 09:01:20 +00:00
wasm-trace-memory-interpreted.js [wasm] Add flag for memory tracing 2017-10-02 08:26:26 +00:00
wasm-trace-memory-interpreted.out [wasm] Refactor memory tracing 2018-01-15 10:13:00 +00:00
wasm-trace-memory-liftoff.js [wasm] Distinguish Liftoff code from Turbofan code 2018-01-17 13:59:08 +00:00
wasm-trace-memory-liftoff.out [wasm] Distinguish Liftoff code from Turbofan code 2018-01-17 13:59:08 +00:00
wasm-trace-memory.js [wasm] Distinguish Liftoff code from Turbofan code 2018-01-17 13:59:08 +00:00
wasm-trace-memory.out [wasm] Refactor memory tracing 2018-01-15 10:13:00 +00:00

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. use

*%(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.