tor-browser

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

syntax-error-primary.js (1656B)


      1 var caught = false;
      2 try {
      3  new Function(")");
      4 } catch (e) {
      5  assertEq(e instanceof SyntaxError, true);
      6  assertEq(e.message.startsWith("expected expression, got ')'") == -1, false);
      7  caught = true;
      8 }
      9 assertEq(caught, true);
     10 
     11 caught = false;
     12 try {
     13  new Function("...;");
     14 } catch (e) {
     15  assertEq(e instanceof SyntaxError, true);
     16  assertEq(e.message.startsWith("expected rest argument name, got ';'") == -1, false);
     17  caught = true;
     18 }
     19 assertEq(caught, true);
     20 
     21 caught = false;
     22 try {
     23  new Function("...a;");
     24 } catch (e) {
     25  assertEq(e instanceof SyntaxError, true);
     26  assertEq(e.message.startsWith("expected closing parenthesis, got ';'") == -1, false);
     27  caught = true;
     28 }
     29 assertEq(caught, true);
     30 
     31 caught = false;
     32 try {
     33  new Function("...a);");
     34 } catch (e) {
     35  assertEq(e instanceof SyntaxError, true);
     36  assertEq(e.message.startsWith("expected '=>' after argument list, got ';'") == -1, false);
     37  caught = true;
     38 }
     39 assertEq(caught, true);
     40 
     41 caught = false;
     42 try {
     43  new Function("...a) @");
     44 } catch (e) {
     45  assertEq(e instanceof SyntaxError, true);
     46  assertEq(e.message.startsWith("expected '=>' after argument list, got '@'") == -1, false);
     47  caught = true;
     48 }
     49 assertEq(caught, true);
     50 
     51 caught = false;
     52 try {
     53  new Function("(if)");
     54 } catch (e) {
     55  assertEq(e instanceof SyntaxError, true);
     56  assertEq(e.message.startsWith("expected expression, got keyword 'if'") == -1, false);
     57  caught = true;
     58 }
     59 assertEq(caught, true);
     60 
     61 caught = false;
     62 try {
     63  new Function("(");
     64 } catch (e) {
     65  assertEq(e instanceof SyntaxError, true);
     66  assertEq(e.message.startsWith("expected expression, got end of script") == -1, false);
     67  caught = true;
     68 }
     69 assertEq(caught, true);