diff options
Diffstat (limited to 'js/src/tests/test262/language/statementList/eval-class-array-literal-with-item.js')
-rw-r--r-- | js/src/tests/test262/language/statementList/eval-class-array-literal-with-item.js | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/statementList/eval-class-array-literal-with-item.js b/js/src/tests/test262/language/statementList/eval-class-array-literal-with-item.js new file mode 100644 index 0000000000..1dee5e82dd --- /dev/null +++ b/js/src/tests/test262/language/statementList/eval-class-array-literal-with-item.js @@ -0,0 +1,46 @@ +// This file was procedurally generated from the following sources: +// - src/statementList/array-literal-with-item.case +// - src/statementList/default/eval-class-declaration.template +/*--- +description: Array Literal with items (Valid syntax of StatementList starting with a Class Declaration) +esid: prod-StatementList +features: [class] +flags: [generated] +info: | + StatementList: + StatementListItem + StatementList StatementListItem + + StatementListItem: + Statement + Declaration + + Declaration: + ClassDeclaration + + + Statement: + BlockStatement + VariableStatement + EmptyStatement + ExpressionStatement + ... + + ExpressionStatement: + [lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }] + Expression ; + + ArrayLiteral[Yield, Await]: + [ Elision_opt ] + [ ElementList ] + [ ElementList , Elision_opt ] +---*/ + + +var result = eval('class C {}[42];'); + +assert.sameValue(Object.getPrototypeOf(result), Array.prototype); +assert.sameValue(result.length, 1); +assert.sameValue(result[0], 42); + +reportCompare(0, 0); |