diff options
Diffstat (limited to 'js/src/tests/non262/async-functions/async-property-name-error.js')
-rw-r--r-- | js/src/tests/non262/async-functions/async-property-name-error.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/js/src/tests/non262/async-functions/async-property-name-error.js b/js/src/tests/non262/async-functions/async-property-name-error.js new file mode 100644 index 0000000000..926794e5d0 --- /dev/null +++ b/js/src/tests/non262/async-functions/async-property-name-error.js @@ -0,0 +1,21 @@ +function assertSyntaxError(code) { + assertThrowsInstanceOf(() => { Function(code); }, SyntaxError, "Function:" + code); + assertThrowsInstanceOf(() => { eval(code); }, SyntaxError, "eval:" + code); + var ieval = eval; + assertThrowsInstanceOf(() => { ieval(code); }, SyntaxError, "indirect eval:" + code); +} + +assertSyntaxError(`({async async: 0})`); +assertSyntaxError(`({async async})`); +assertSyntaxError(`({async async, })`); +assertSyntaxError(`({async async = 0} = {})`); + +for (let decl of ["var", "let", "const"]) { + assertSyntaxError(`${decl} {async async: a} = {}`); + assertSyntaxError(`${decl} {async async} = {}`); + assertSyntaxError(`${decl} {async async, } = {}`); + assertSyntaxError(`${decl} {async async = 0} = {}`); +} + +if (typeof reportCompare === "function") + reportCompare(true, true); |