diff options
Diffstat (limited to 'js/src/jit-test/tests/basic/offThreadCompileToStencil-01.js')
-rw-r--r-- | js/src/jit-test/tests/basic/offThreadCompileToStencil-01.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/basic/offThreadCompileToStencil-01.js b/js/src/jit-test/tests/basic/offThreadCompileToStencil-01.js new file mode 100644 index 0000000000..461af86511 --- /dev/null +++ b/js/src/jit-test/tests/basic/offThreadCompileToStencil-01.js @@ -0,0 +1,30 @@ +// |jit-test| skip-if: helperThreadCount() === 0 + +// Any copyright is dedicated to the Public Domain. +// http://creativecommons.org/licenses/publicdomain/ + +// Test off-thread parsing. + +load(libdir + 'asserts.js'); + +offThreadCompileToStencil('Math.sin(Math.PI/2)'); +var stencil = finishOffThreadStencil(); +assertEq(evalStencil(stencil), 1); + +offThreadCompileToStencil('a string which cannot be reduced to the start symbol'); +assertThrowsInstanceOf(() => { + var stencil = finishOffThreadStencil(); + evalStencil(stencil); +}, SyntaxError); + +offThreadCompileToStencil('smerg;'); +assertThrowsInstanceOf(() => { + var stencil = finishOffThreadStencil(); + evalStencil(stencil); +}, ReferenceError); + +offThreadCompileToStencil('throw "blerg";'); +assertThrowsValue(() => { + var stencil = finishOffThreadStencil(); + evalStencil(stencil); +}, 'blerg'); |