tree: f621a62241be3ac005264cfe3d9a9088f0b076b8 [path history] [tgz]
  1. fail/
  2. mjsunit/
  3. regress/
  4. asm-assignment-undeclared.js
  5. asm-assignment-undeclared.out
  6. asm-function-mismatch-def.js
  7. asm-function-mismatch-def.out
  8. asm-function-mismatch-use.js
  9. asm-function-mismatch-use.out
  10. asm-function-redefined.js
  11. asm-function-redefined.out
  12. asm-function-undefined.js
  13. asm-function-undefined.out
  14. asm-function-variable-collision.js
  15. asm-function-variable-collision.out
  16. asm-import-wrong-annotation.js
  17. asm-import-wrong-annotation.out
  18. asm-import-wrong-object.js
  19. asm-import-wrong-object.out
  20. asm-linking-bogus-heap.js
  21. asm-linking-bogus-heap.out
  22. asm-linking-bogus-stdlib.js
  23. asm-linking-bogus-stdlib.out
  24. asm-linking-missing-heap.js
  25. asm-linking-missing-heap.out
  26. asm-missing-parameter-annotation.js
  27. asm-missing-parameter-annotation.out
  28. asm-missing-return-annotation.js
  29. asm-missing-return-annotation.out
  30. asm-table-mismatch-def.js
  31. asm-table-mismatch-def.out
  32. asm-table-mismatch-use.js
  33. asm-table-mismatch-use.out
  34. asm-table-redefined.js
  35. asm-table-redefined.out
  36. asm-table-undefined.js
  37. asm-table-undefined.out
  38. asm-table-variable-collision.js
  39. asm-table-variable-collision.out
  40. BUILD.gn
  41. empty.js
  42. empty.out
  43. message.status
  44. non-use-strict-hex-escape.js
  45. non-use-strict-hex-escape.out
  46. non-use-strict-octal-escape.js
  47. non-use-strict-octal-escape.out
  48. non-use-strict-uhex-escape.js
  49. non-use-strict-uhex-escape.out
  50. nonstrict-arguments.js
  51. nonstrict-arguments.out
  52. nonstrict-eval.js
  53. nonstrict-eval.out
  54. nonstrict-with.js
  55. nonstrict-with.out
  56. object-binding-pattern-await-computed-name.js
  57. object-binding-pattern-await-computed-name.out
  58. OWNERS
  59. README.md
  60. strict-octal-indirect-regexp.js
  61. strict-octal-indirect-regexp.out
  62. strict-octal-regexp.js
  63. strict-octal-regexp.out
  64. testcfg.py
  65. try-catch-finally-no-message.js
  66. try-catch-finally-no-message.out
  67. try-catch-finally-return-in-finally.js
  68. try-catch-finally-return-in-finally.out
  69. try-finally-return-in-finally.js
  70. try-finally-return-in-finally.out
  71. wasm-finish-compilation.js
  72. wasm-finish-compilation.out
  73. wasm-function-name-async.js
  74. wasm-function-name-async.out
  75. wasm-function-name-streaming.js
  76. wasm-function-name-streaming.out
  77. wasm-module-and-function-name-async.js
  78. wasm-module-and-function-name-async.out
  79. wasm-module-and-function-name-streaming.js
  80. wasm-module-and-function-name-streaming.out
  81. wasm-module-name-async.js
  82. wasm-module-name-async.out
  83. wasm-module-name-streaming.js
  84. wasm-module-name-streaming.out
  85. wasm-no-name-async.js
  86. wasm-no-name-async.out
  87. wasm-no-name-streaming.js
  88. wasm-no-name-streaming.out
  89. wasm-trace-memory-interpreted.js
  90. wasm-trace-memory-interpreted.out
  91. wasm-trace-memory-liftoff.js
  92. wasm-trace-memory-liftoff.out
  93. wasm-trace-memory.js
  94. wasm-trace-memory.out
test/message/README.md

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.