repl: fix JSON.parse error check

Before this, entering something like:

> JSON.parse('066');

resulted in the "..." prompt instead of displaying the expected
"SyntaxError: Unexpected number"
archived-io.js-v0.10
Brian White 2013-05-26 12:26:39 -04:00 committed by Ben Noordhuis
parent 9ee86b718c
commit 774b28fde7
2 changed files with 4 additions and 2 deletions

View File

@ -923,6 +923,5 @@ function isSyntaxError(e) {
// "strict mode" syntax errors
!e.match(/^SyntaxError: .*strict mode.*/i) &&
// JSON.parse() error
!(e.match(/^SyntaxError: Unexpected (token .*|end of input)/) &&
e.match(/\n {4}at Object.parse \(native\)\n/));
!e.match(/\n {4}at Object.parse \(native\)\n/);
}

View File

@ -134,6 +134,9 @@ function error_test() {
expect: /^SyntaxError: Unexpected token i/ },
// end of input to JSON.parse error is special case of syntax error,
// should throw
{ client: client_unix, send: 'JSON.parse(\'066\');',
expect: /^SyntaxError: Unexpected number/ },
// should throw
{ client: client_unix, send: 'JSON.parse(\'{\');',
expect: /^SyntaxError: Unexpected end of input/ },
// invalid RegExps are a special case of syntax error,