// Any copyright is dedicated to the Public Domain.
// http://creativecommons.org/licenses/publicdomain/

// Test off-thread parsing.

load(libdir + 'asserts.js');

if (helperThreadCount() === 0)
  quit(0);

offThreadCompileScript('Math.sin(Math.PI/2)');
assertEq(runOffThreadScript(), 1);

offThreadCompileScript('a string which cannot be reduced to the start symbol');
assertThrowsInstanceOf(runOffThreadScript, SyntaxError);

offThreadCompileScript('smerg;');
assertThrowsInstanceOf(runOffThreadScript, ReferenceError);

offThreadCompileScript('throw "blerg";');
assertThrowsValue(runOffThreadScript, 'blerg');