Tests for the Runtime.parse command. == Running test suite: Runtime.parse -- Running test case: SyntaxErrorType.None PASS: Should be SyntaxErrorType None. Source: PASS: Should be SyntaxErrorType None. Source: ; PASS: Should be SyntaxErrorType None. Source: myVariable PASS: Should be SyntaxErrorType None. Source: var x = 1; x PASS: Should be SyntaxErrorType None. Source: [1,2,3] PASS: Should be SyntaxErrorType None. Source: ({}) PASS: Should be SyntaxErrorType None. Source: ({prop:true}).x.x.x PASS: Should be SyntaxErrorType None. Source: if(1)1 -- Running test case: SyntaxErrorType.UnterminatedLiteral PASS: Should be SyntaxErrorType UnterminatedLiteral. Source: 0b ^ Error Message: No binary digits after '0b' Range: {"startOffset":0,"endOffset":1} PASS: Should be SyntaxErrorType UnterminatedLiteral. Source: 0o ^ Error Message: No octal digits after '0o' Range: {"startOffset":0,"endOffset":1} PASS: Should be SyntaxErrorType UnterminatedLiteral. Source: 0x ^ Error Message: No hexadecimal digits after '0x' Range: {"startOffset":0,"endOffset":1} PASS: Should be SyntaxErrorType UnterminatedLiteral. Source: 1e ^~ Error Message: Non-number found after exponent indicator Range: {"startOffset":0,"endOffset":2} PASS: Should be SyntaxErrorType UnterminatedLiteral. Source: ' ^ Error Message: Unexpected EOF Range: {"startOffset":0,"endOffset":1} PASS: Should be SyntaxErrorType UnterminatedLiteral. Source: " ^ Error Message: Unexpected EOF Range: {"startOffset":0,"endOffset":1} PASS: Should be SyntaxErrorType UnterminatedLiteral. Source: var \u007 ^~~~~ Error Message: Incomplete unicode escape in identifier: '\u007' Range: {"startOffset":4,"endOffset":9} -- Running test case: SyntaxErrorType.Recoverable PASS: Should be SyntaxErrorType Recoverable. Source: ( ^ Error Message: Unexpected end of script Error Range: {"startOffset":1,"endOffset":1} PASS: Should be SyntaxErrorType Recoverable. Source: { ^ Error Message: Unexpected end of script Error Range: {"startOffset":1,"endOffset":1} PASS: Should be SyntaxErrorType Recoverable. Source: ! ^ Error Message: Unexpected end of script Error Range: {"startOffset":1,"endOffset":1} PASS: Should be SyntaxErrorType Recoverable. Source: - ^ Error Message: Unexpected end of script Error Range: {"startOffset":1,"endOffset":1} PASS: Should be SyntaxErrorType Recoverable. Source: + ^ Error Message: Unexpected end of script Error Range: {"startOffset":1,"endOffset":1} PASS: Should be SyntaxErrorType Recoverable. Source: ~ ^ Error Message: Unexpected end of script Error Range: {"startOffset":1,"endOffset":1} PASS: Should be SyntaxErrorType Recoverable. Source: 1, ^ Error Message: Unexpected end of script Error Range: {"startOffset":2,"endOffset":2} PASS: Should be SyntaxErrorType Recoverable. Source: var ^ Error Message: Unexpected end of script Error Range: {"startOffset":3,"endOffset":3} PASS: Should be SyntaxErrorType Recoverable. Source: 'use strict'; let ^ Error Message: Unexpected end of script Error Range: {"startOffset":17,"endOffset":17} PASS: Should be SyntaxErrorType Recoverable. Source: const ^ Error Message: Unexpected end of script Error Range: {"startOffset":5,"endOffset":5} PASS: Should be SyntaxErrorType Recoverable. Source: var {x ^ Error Message: Unexpected end of script Error Range: {"startOffset":6,"endOffset":6} PASS: Should be SyntaxErrorType Recoverable. Source: var [x ^ Error Message: Unexpected end of script Error Range: {"startOffset":6,"endOffset":6} PASS: Should be SyntaxErrorType Recoverable. Source: var x, ^ Error Message: Unexpected end of script Error Range: {"startOffset":6,"endOffset":6} PASS: Should be SyntaxErrorType Recoverable. Source: if(1) ^ Error Message: Unexpected end of script Error Range: {"startOffset":5,"endOffset":5} PASS: Should be SyntaxErrorType Recoverable. Source: if(1){ ^ Error Message: Unexpected end of script Error Range: {"startOffset":6,"endOffset":6} PASS: Should be SyntaxErrorType Recoverable. Source: if(1){}else ^ Error Message: Unexpected end of script Error Range: {"startOffset":11,"endOffset":11} PASS: Should be SyntaxErrorType Recoverable. Source: if(1){}else{ ^ Error Message: Unexpected end of script Error Range: {"startOffset":12,"endOffset":12} PASS: Should be SyntaxErrorType Recoverable. Source: while(1) ^ Error Message: Unexpected end of script Error Range: {"startOffset":8,"endOffset":8} PASS: Should be SyntaxErrorType Recoverable. Source: while(1){ ^ Error Message: Unexpected end of script Error Range: {"startOffset":9,"endOffset":9} PASS: Should be SyntaxErrorType Recoverable. Source: for(;;) ^ Error Message: Unexpected end of script Error Range: {"startOffset":7,"endOffset":7} PASS: Should be SyntaxErrorType Recoverable. Source: for(;;){ ^ Error Message: Unexpected end of script Error Range: {"startOffset":8,"endOffset":8} PASS: Should be SyntaxErrorType Recoverable. Source: ()=> ^ Error Message: Unexpected end of script Error Range: {"startOffset":4,"endOffset":4} PASS: Should be SyntaxErrorType Recoverable. Source: ()=>{ ^ Error Message: Unexpected end of script Error Range: {"startOffset":5,"endOffset":5} PASS: Should be SyntaxErrorType Recoverable. Source: /* ^~ Error Message: Multiline comment was not closed properly Error Range: {"startOffset":0,"endOffset":2} PASS: Should be SyntaxErrorType Recoverable. Source: ` ^ Error Message: Unexpected EOF Error Range: {"startOffset":0,"endOffset":1} PASS: Should be SyntaxErrorType Recoverable. Source: `${1} ^ Error Message: Unexpected EOF Error Range: {"startOffset":4,"endOffset":5} PASS: Should be SyntaxErrorType Recoverable. Source: `${ ^ Error Message: Unexpected end of script Error Range: {"startOffset":3,"endOffset":3} PASS: Should be SyntaxErrorType Recoverable. Source: function ^ Error Message: Unexpected end of script Error Range: {"startOffset":8,"endOffset":8} PASS: Should be SyntaxErrorType Recoverable. Source: function foo ^ Error Message: Unexpected end of script Error Range: {"startOffset":12,"endOffset":12} PASS: Should be SyntaxErrorType Recoverable. Source: function foo( ^ Error Message: Unexpected end of script Error Range: {"startOffset":13,"endOffset":13} PASS: Should be SyntaxErrorType Recoverable. Source: function foo(){ ^ Error Message: Unexpected end of script Error Range: {"startOffset":15,"endOffset":15} PASS: Should be SyntaxErrorType Recoverable. Source: (function() { ^ Error Message: Unexpected end of script Error Range: {"startOffset":13,"endOffset":13} PASS: Should be SyntaxErrorType Recoverable. Source: (function() {} ^ Error Message: Unexpected end of script Error Range: {"startOffset":14,"endOffset":14} PASS: Should be SyntaxErrorType Recoverable. Source: (function() {})( ^ Error Message: Unexpected end of script Error Range: {"startOffset":16,"endOffset":16} PASS: Should be SyntaxErrorType Recoverable. Source: switch(x) ^ Error Message: Unexpected end of script Error Range: {"startOffset":9,"endOffset":9} PASS: Should be SyntaxErrorType Recoverable. Source: switch(x){ ^ Error Message: Unexpected end of script Error Range: {"startOffset":10,"endOffset":10} PASS: Should be SyntaxErrorType Recoverable. Source: switch(x){case ^ Error Message: Unexpected end of script Error Range: {"startOffset":14,"endOffset":14} PASS: Should be SyntaxErrorType Recoverable. Source: switch(x){case 1 ^ Error Message: Unexpected end of script Error Range: {"startOffset":16,"endOffset":16} PASS: Should be SyntaxErrorType Recoverable. Source: switch(x){case 1: ^ Error Message: Unexpected end of script Error Range: {"startOffset":17,"endOffset":17} PASS: Should be SyntaxErrorType Recoverable. Source: class ^ Error Message: Unexpected end of script Error Range: {"startOffset":5,"endOffset":5} PASS: Should be SyntaxErrorType Recoverable. Source: class Klass ^ Error Message: Unexpected end of script Error Range: {"startOffset":11,"endOffset":11} PASS: Should be SyntaxErrorType Recoverable. Source: class Klass { ^ Error Message: Unexpected end of script Error Range: {"startOffset":13,"endOffset":13} PASS: Should be SyntaxErrorType Recoverable. Source: var x = { ^ Error Message: Unexpected end of script Error Range: {"startOffset":9,"endOffset":9} PASS: Should be SyntaxErrorType Recoverable. Source: var x = {prop ^ Error Message: Unexpected end of script Error Range: {"startOffset":13,"endOffset":13} PASS: Should be SyntaxErrorType Recoverable. Source: var x = {prop: ^ Error Message: Unexpected end of script Error Range: {"startOffset":14,"endOffset":14} PASS: Should be SyntaxErrorType Recoverable. Source: var x = {prop:123 ^ Error Message: Unexpected end of script Error Range: {"startOffset":17,"endOffset":17} PASS: Should be SyntaxErrorType Recoverable. Source: var x = {prop:123 ^ Error Message: Unexpected end of script Error Range: {"startOffset":18,"endOffset":18} PASS: Should be SyntaxErrorType Recoverable. Source: var x = {prop:123, ^ Error Message: Unexpected end of script Error Range: {"startOffset":18,"endOffset":18} PASS: Should be SyntaxErrorType Recoverable. Source: var x = {prop:123, ^ Error Message: Unexpected end of script Error Range: {"startOffset":19,"endOffset":19} PASS: Should be SyntaxErrorType Recoverable. Source: var x = {prop:123, 'prop2' ^ Error Message: Unexpected end of script Error Range: {"startOffset":26,"endOffset":26} PASS: Should be SyntaxErrorType Recoverable. Source: var x = {prop:123, [12 ^ Error Message: Unexpected end of script Error Range: {"startOffset":22,"endOffset":22} PASS: Should be SyntaxErrorType Recoverable. Source: var x = {prop:123, [12] ^ Error Message: Unexpected end of script Error Range: {"startOffset":23,"endOffset":23} PASS: Should be SyntaxErrorType Recoverable. Source: var x = {prop:123, [12]: ^ Error Message: Unexpected end of script Error Range: {"startOffset":24,"endOffset":24} PASS: Should be SyntaxErrorType Recoverable. Source: var x = {prop:123, [12]:567 ^ Error Message: Unexpected end of script Error Range: {"startOffset":27,"endOffset":27} PASS: Should be SyntaxErrorType Recoverable. Source: var x = [ ^ Error Message: Unexpected end of script Error Range: {"startOffset":9,"endOffset":9} PASS: Should be SyntaxErrorType Recoverable. Source: var x = [1 ^ Error Message: Unexpected end of script Error Range: {"startOffset":10,"endOffset":10} PASS: Should be SyntaxErrorType Recoverable. Source: var x = [1, ^ Error Message: Unexpected end of script Error Range: {"startOffset":11,"endOffset":11} PASS: Should be SyntaxErrorType Recoverable. Source: var x = [1,[] ^ Error Message: Unexpected end of script Error Range: {"startOffset":13,"endOffset":13} PASS: Should be SyntaxErrorType Recoverable. Source: var x = [1,{} ^ Error Message: Unexpected end of script Error Range: {"startOffset":13,"endOffset":13} -- Running test case: SyntaxErrorType.Irrecoverable PASS: Should be SyntaxErrorType Irrecoverable. Source: 1$ ^ Error Message: No identifiers allowed directly after numeric literal Error Range: {"startOffset":0,"endOffset":1} PASS: Should be SyntaxErrorType Irrecoverable. Source: var x = {}} ^ Error Message: Parser error Error Range: {"startOffset":10,"endOffset":11} PASS: Should be SyntaxErrorType Irrecoverable. Source: ({})) ^ Error Message: Unexpected token ')'. Parse error. Error Range: {"startOffset":4,"endOffset":5} PASS: Should be SyntaxErrorType Irrecoverable. Source: var x = = ^ Error Message: Unexpected token '=' Error Range: {"startOffset":8,"endOffset":9} PASS: Should be SyntaxErrorType Irrecoverable. Source: const x; ^ Error Message: Unexpected token ';'. const declared variable 'x' must have an initializer. Error Range: {"startOffset":7,"endOffset":8} PASS: Should be SyntaxErrorType Irrecoverable. Source: let x = 1; let x = 2; ^ Error Message: Cannot declare a let variable twice: 'x'. Error Range: {"startOffset":17,"endOffset":18} PASS: Should be SyntaxErrorType Irrecoverable. Source: if x(1) ^ Error Message: Unexpected identifier 'x'. Expected '(' to start an 'if' condition. Error Range: {"startOffset":3,"endOffset":4}