tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

syntax-error-throw.js (988B)


      1 var caught = false;
      2 try {
      3  new Function("throw;");
      4 } catch (e) {
      5  assertEq(e instanceof SyntaxError, true);
      6  assertEq(e.message.startsWith("throw statement is missing an expression") == -1, false);
      7  caught = true;
      8 }
      9 assertEq(caught, true);
     10 
     11 caught = false;
     12 try {
     13  new Function("throw\n1;");
     14 } catch (e) {
     15  assertEq(e instanceof SyntaxError, true);
     16  assertEq(e.message.startsWith("no line break is allowed between 'throw' and its expression") == -1, false);
     17  caught = true;
     18 }
     19 assertEq(caught, true);
     20 
     21 caught = false;
     22 try {
     23  new Function("throw}");
     24 } catch (e) {
     25  assertEq(e instanceof SyntaxError, true);
     26  assertEq(e.message.startsWith("throw statement is missing an expression") == -1, false);
     27  caught = true;
     28 }
     29 assertEq(caught, true);
     30 
     31 caught = false;
     32 try {
     33  new Function("throw");
     34 } catch (e) {
     35  assertEq(e instanceof SyntaxError, true);
     36  assertEq(e.message.startsWith("throw statement is missing an expression") == -1, false);
     37  caught = true;
     38 }
     39 assertEq(caught, true);