Commit Graph

212 Commits

Author SHA1 Message Date
André Bargull 86da171663 Change case-files for destructuring-with-yield to not rely on destructuring target evaluation order 2017-09-16 17:00:54 +02:00
Leo Balter cf68ab3e5e Add Symbol.iterator features flags to test generation files 2017-09-08 10:13:50 -04:00
Leo Balter 31f7b3e218 Update test generation files to use verifyProperty instead of legacy helpers 2017-09-08 10:13:36 -04:00
Leo Balter c41faf1aca Add missing Symbol features flags 2017-09-07 15:51:13 -04:00
Leo Balter 391ce890b8 Merge pull request #1205 from anba/class-fields-fixes
Misc. class fields fixes
2017-09-05 11:16:19 -04:00
André Bargull f810ad2550 Fix issues in async generator case files
Incorrect $DONE handlers which led to calling $DONE twice
- async-generators/yield-promise-reject-next-yield-star-async-iterator.case
- dstr-assignment-for-await/array-elem-trlg-iter-rest-nrml-close-skip.case

$DONE handler not called at all:
- dstr-assignment-for-await/array-elem-put-const.case
- dstr-assignment-for-await/array-elem-trlg-iter-elision-iter-nrml-close-null.case

Incorrect assumed execution sequence in IteratorDestructuringAssignmentEvaluation:
- dstr-assignment-for-await/array-elem-iter-rtrn-close-null.case
2017-09-04 09:42:06 -04:00
André Bargull 13c94180c6 Fix bugs in class-field template and case files
- Correct property access in class fields template
- Remove assertions for properties which aren't present
- Correct expected assertion value for uninitialized class field
- Correct expected property descriptor attributes
- Fix property tests in class-fields/string-literal-names.case
- Pass restore option, otherwise it's not possible to call the method later
- Fix async iteration tests to test iteration result objects
2017-09-01 23:44:52 +02:00
Daniel Ehrenberg f3f3b47306
Refactor class fields templates and cases 2017-08-24 14:11:27 -04:00
Leo Balter ceaa012121 Remove remaining cases for ...{ 2017-08-18 18:16:55 -04:00
Leo Balter eb93f96911 Merge pull request #1182 from rwaldron/1181
features: generator => generators. Fixes gh-1181
2017-08-18 17:19:01 -04:00
Rick Waldron 072f3fd5b8 Removes previously missed object rest `...{` cases. 2017-08-18 17:03:02 -04:00
Rick Waldron 650d084fe3 features: generator => generators 2017-08-16 15:11:05 -04:00
Rick Waldron f83d422eae Remove selection of incorrect async iteration tests
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-07-21 18:31:04 -04:00
Daniel Ehrenberg 3b0838917c Revert "Add initial set of class field tests (from V8's test-parsing.cc)"
This reverts commit e731114cff.
2017-07-13 20:54:36 +02:00
Xan López e731114cff Add initial set of class field tests (from V8's test-parsing.cc)
At this point this requires Babel for testing, but most tests in this
commit won't pass until this is fixed:
https://github.com/babel/babel/issues/5056
2017-07-13 14:43:06 -04:00
Rick Waldron d05b7dfa35 Duplicate src/dstr-assignment/obj-rest-computed-property.case into regular and sloppy versions. Fixes gh-1082
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-06-28 15:48:54 -04:00
Rick Waldron eaec1ffe2f async-iteration: yield Promise.reject(value) is treated as throw value (rejects)
- http://tc39.github.io/tc39-notes/2017-05_may-25.html#15iva-revisiting-async-generator-yield-behavior
- http://tc39.github.io/tc39-notes/2017-05_may-25.html#conclusionresolution-12

Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-06-28 12:03:09 -04:00
Mike Pennisi 81d00def42 Force "early error" tests to fail if evaluated
This pattern makes expectations more explicit by making test files more
literal.
2017-06-28 11:24:36 -04:00
Rick Waldron a57ffd11e1 Remove tests that allow `...{` in object destructuring. Ref gh-1050
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-06-23 13:15:52 -04:00
Leo Balter 6110675fd3 Merge pull request #1045 from caiolima/obj-rest-computed-prop
Adding case to computed property
2017-06-12 19:22:53 -03:00
Rick Waldron ff34bf5c73 Remove src/dstr-assignment/default/for-await-of.template (invalid)
Will need to revisit with a function and generator version

Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-06-12 17:10:21 -04:00
Rick Waldron 3bff862ca7 src/dstr-assignment-async-iteration -> src/dstr-assignment-for-await
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-05-31 16:04:56 -04:00
Rick Waldron 60a6a7c81e Merge pull request #1039 from rwaldron/dstr-assignment_for-await-of
[WIP] for-await-of: dstr-assignment, templates & cases
2017-05-31 15:46:40 -04:00
Caio Lima 35adcb2a7d Adding case to computed property 2017-05-22 22:24:31 -03:00
Rick Waldron f6dd54eb19 update the async func templates to match async generator templates (error)
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-05-22 14:18:53 -04:00
Rick Waldron b1620ab5b8 src/dstr-binding-async-iteration => src/dstr-binding-for-await
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-05-22 13:23:12 -04:00
Rick Waldron e522cbce57 Update algorithm step definitions
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-05-22 13:16:30 -04:00
Rick Waldron befaab57a4 Update cases and templates per review
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-05-22 12:48:43 -04:00
Rick Waldron fd3510dd16 Move async-iteration specific dstr-assignment templates into own src directory
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-05-19 12:28:38 -04:00
Rick Waldron d4fde0a5c3 for-await-of: dstr-assignment, cases
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-05-17 15:31:50 -04:00
Leo Balter 26b0437c4f
Fix features flags 2017-05-16 17:31:32 -04:00
Rick Waldron 9f3b85fb21 for-await-of: dstr-assignment, default template
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-05-16 13:24:41 -04:00
Rick Waldron 2b0a8cc1c4 Merge pull request #1037 from leobalter/asyncIterators
Add templates for dstr-binding w/ for-await-of looping over async iterators
2017-05-16 09:25:23 -04:00
Leo Balter 93e8924ec5
Add templates for dstr-binding w/ for-await-of looping over async iterators 2017-05-15 16:01:19 -04:00
Leo Balter 59d9d0b6d8
Assert iterators are consumed - and closed - in dstr patterns
Ref https://bugzilla.mozilla.org/show_bug.cgi?id=1364608
2017-05-15 15:23:48 -04:00
Leo Balter 17b13b9d01 Merge pull request #1020 from rwaldron/dstr-binding_for-await-of-async-gen-func-error
for-await-of: dstr-binding, error, async func & async gen templates
2017-05-12 18:28:39 -04:00
Rick Waldron c3825f6138 for-await-of: dstr-binding, async func & async gen templates (update steps)
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-05-11 15:45:06 -04:00
Leo Balter f4f23cb06b
Set a proper length reference to avoid conflict with browsers
In browsers length is a valid property of window, so they would have a normal
completion instead of a ReferenceError
2017-05-10 14:08:33 -04:00
Leo Balter ed714d702a Merge pull request #1017 from anba/expr-lookahead-restr
Expression statement lookahead restriction and identifier tests
2017-05-09 18:38:11 -04:00
André Bargull 2763c3b178 Add templates for lexical redeclarations in block- and switch-statements 2017-05-04 09:29:38 -07:00
Rick Waldron c3c8d6f099 for-await-of: dstr-binding, error, async func & async gen templates
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-05-03 12:51:55 -04:00
André Bargull 36a8672ae6 Add templates for escaped and unescaped 'yield' and 'await' as identifiers 2017-05-02 12:09:31 -07:00
Rick Waldron 8f7dc1912a for-await-of: dstr-binding, async func & async gen templates
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-05-01 17:19:50 -04:00
Rick Waldron 684449a65f for-await-of: dstr-binding templates
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-04-28 17:02:43 -04:00
Leo Balter 84198d6664
Remove duplicate case
same es src/dstr-assignment/array-elem-target-simple-strict.case
2017-04-25 15:52:19 -04:00
Leo Balter de15143976
Add Async Functions to function templates 2017-04-21 15:24:00 -04:00
Leo Balter 234962036a
remove unused template item for arguments 2017-04-21 15:23:59 -04:00
Leo Balter 8d55711b19
Add async generator templates for the arguments cases 2017-04-21 15:23:58 -04:00
Leo Balter 0d08288e4c
Normalize trailing comma cases both for args and parameters 2017-04-21 15:23:57 -04:00
Leo Balter a6c5bcf81d
Update function forms templates to reflect the params name when appropriate only 2017-04-21 15:03:49 -04:00
Leo Balter 20d496729d
Rename src/params to src/function-forms
The templates are being used for many tests reusing the same available function forms.
The format they are provided allow us to extend tests with cases for other tests relying
in the same formats.
2017-04-21 15:03:46 -04:00
Caitlin Potter 9979d72764 Update Async-from-Sync Iterator yield* tests
Ordering of done and value property loads changed in
395b2e3b2f
2017-04-10 18:24:22 -04:00
André Bargull faaa4685e4 Remove invalid async-flag from syntax error tests (#959) 2017-04-10 14:34:57 -04:00
Daniel Ehrenberg dcfcd17ae7
Fix async generator test templates
- Insert a missing .next() call
- Avoid overlapping names used in test cases

Case files like `src/dstr-binding/ary-ptrn-elem-ary-elision-init.case` are already setting
bindings named `g`. Renaming them in the templates prevents overlapping names.
2017-04-06 19:40:25 -04:00
André Bargull 3291704eb2
Fix multiple test errors
Tests doesn't use async functionality and don't call $DONE, so remove
"async" flag:
- src/params/error/async-gen-named-func-expr.template
- test/language/expressions/async-generator/params-named-dflt-abrupt.js
- test/language/expressions/async-generator/params-named-dflt-ref-later.js
- test/language/expressions/async-generator/params-named-dflt-ref-self.js

Intl.PluralRules.prototype is no longer a Intl.Prototype instance:
- test/intl402/PluralRules/prototype/prototype.js

Intl.PluralRules throws an error when called as a function:
- test/intl402/PluralRules/undefined-newtarget-throws.js

Module namespace objects call OrdinaryDelete for symbol properties:
- test/language/module-code/namespace/internals/delete-non-exported.js

Async generators no longer retrieves "done" property twice:
- src/async-generators/yield-star-async-next.case
- src/async-generators/yield-star-async-return.case
- src/async-generators/yield-star-async-throw.case

Minor units of CLF is 4, so we need to test with maximumFractionDigits=3
to get an error:
- test/intl402/NumberFormat/dft-currency-mnfd-range-check-mxfd.js

DateTimeFormat.prototype.formatToParts length property was changed from
0 to 1:
- test/intl402/DateTimeFormat/prototype/formatToParts/length.js

minimumSignificantDigits and maximumSignificantDigits properties are
only retrieved once:
- test/intl402/NumberFormat/11.1.1_32.js
2017-04-06 15:30:13 -04:00
Daniel Ehrenberg 6330eccfc4
Add feature flags for various tests 2017-04-06 12:18:03 -04:00
Leo Balter ce95292899 Merge pull request #939 from dilijev/typo
Corrected typo in annexB templates exsting->existing
2017-04-06 11:57:57 -04:00
Rick Waldron 818bb8d88f Merge pull request #938 from leobalter/yield-star-abrupt-getiter
Add cases for abrupt completions in yield* in async generator - getIterator
2017-04-06 11:43:29 -04:00
Rick Waldron d7f4f5f664 Merge pull request #937 from leobalter/yield-star
templates for yield star flow
2017-04-06 11:43:21 -04:00
Rick Waldron 7685eeac1f Merge pull request #941 from leobalter/yield-star-next-abrupt
Add cases for abrupt completions in yield* in async generator - next
2017-04-06 11:42:54 -04:00
Rick Waldron 01ce88b588 Merge pull request #922 from leobalter/async-gen-templates-dstr-errors
Add async generator error templates for destructuring binding
2017-04-06 11:42:04 -04:00
Rick Waldron b0e921ff45 Merge pull request #921 from leobalter/async-gen-templates-dstr
Add async generator templates for destructing binding
2017-04-06 11:41:27 -04:00
Leo Balter 2c6a82e55f
Add cases for abrupt completions in yield* in async generator - next
Closes #883
2017-03-27 21:42:06 -04:00
Doug Ilijev be788f6abf Renamed src/annex-b-fns/*-{ exsting -> existing }-*.case 2017-03-27 17:41:00 -07:00
Leo Balter 78388c5ac2
Add cases for abrupt completions in yield* in async generator - getting iterator
Closes #873
2017-03-27 20:38:14 -04:00
Leo Balter a010c9cf91
Add cases for yield stars flow 2017-03-27 17:15:27 -04:00
Leonardo Balter c6191216c5
Add asyng-gen templates for params in the test gen tool 2017-03-27 13:32:03 -04:00
Leo Balter 3f51de0c49
Add features flag for templates w/ Object spread and rest 2017-03-27 13:21:11 -04:00
Leo Balter 6ad75adb0e
Add async-iteration features flag 2017-03-27 13:07:10 -04:00
Leonardo Balter e34a56774e
Improve some yield cases based on feedback 2017-03-27 13:07:09 -04:00
Leonardo Balter 3a4e3bd8b1
Add generators templates for async gen 2017-03-27 13:07:07 -04:00
Leonardo Balter 76001a503f
Fix current generator templates 2017-03-27 13:07:05 -04:00
Leonardo Balter 05e54bb076
Add async gen error templates for dstr-binding 2017-03-27 12:58:59 -04:00
Leonardo Balter 6d3f8152fc
Add async gen templates for dstr-binding 2017-03-27 12:54:15 -04:00
Leo Balter 1e35ec9fed
Fix case sensitive template name 2017-03-27 12:12:32 -04:00
Leonardo Balter 30c280a1f9
Add case for obj rest name equal to a property
Fixes #913
2017-03-20 14:50:53 -04:00
Leonardo Balter 585f48389f
fix typo 2017-03-20 14:50:45 -04:00
Leo Balter e4bbdba105 Merge pull request #914 from leobalter/850-top-level
Avoid top level name and length bindings
2017-03-14 20:48:48 -04:00
Leonardo Balter 659d82ded4
Rename top level 'length' bindings from test generation cases
Ref #850
2017-03-14 17:42:03 -04:00
Leonardo Balter 41370bcb99
Create tests for trailing comma on arguments list 2017-03-14 16:27:56 -04:00
Leonardo Balter cb85912b13
fix location for features 2017-03-14 15:11:05 -04:00
Leonardo Balter c37a242057
Move tests for params trailing comma to the test gen tool 2017-03-14 14:58:32 -04:00
Leonardo Balter abaf554c2d
prefix params cases to dflt- while templates are not set to dlft anymore 2017-03-14 13:20:37 -04:00
Leonardo Balter ae1455c062
mv src/dflt-params to src/params folder 2017-03-14 13:20:23 -04:00
Caio Lima 16e66ece0c Initial set for Object Spread feature (#890) 2017-03-13 10:21:26 -04:00
Leo Balter 4108569dd7 Merge pull request #891 from leobalter/860-block-dft-params
Test for parameters with default expressions in Annex B FiB tests
2017-03-10 15:53:01 -05:00
Leonardo Balter 77fbf1cada
Additional coverage for computed yield values
Ref #865
Ref https://github.com/tc39/test262/pull/890#issuecomment-284600429
2017-03-09 10:23:08 -05:00
Caio Lima 0200c63396
Implementing test cases for object rest deconstruction
Closes #867
Ref #865
2017-03-06 16:24:35 -05:00
Leonardo Balter 60303b9f07
Test for parameters with default expressions in Annex B FiB tests
Resolves gh-860
2017-03-06 16:05:37 -05:00
Mike Pennisi f03c2c244c Procedurally generate related tests
Take advantage of a recent extension to the test generation tool in
order to limit duplication.
2017-03-04 12:17:35 -05:00
Mike Pennisi 228851fbe4
Add tests for accessor names 2017-03-01 11:38:10 -05:00
Mike Pennisi 7f6e6d137d [generation] Parse and render new error format
Extend the test generation tool to emit the recently-modified format of
the "negative" meta-data. Update the effected test case files
accordingly.
2016-10-19 15:24:19 -04:00
jugglinmike a41b71115b Annex b skip fib (#704)
* Re-generate tests

The test generation tool has been modified in the time since these tests
were first generated and committed to the project. Re-generate the tests
using the latest version of the tool.

* Add test cases for Annex B hoisting disqualifiers

The "variable-like" function hoisting semantics defined in Annex B
extension B.3.3 is only applied if "[...] replacing the
FunctionDeclaration f with a VariableStatement that has F as a
BindingIdentifier would not produce any Early Errors [...]". Test262
previously included tests for this condition when the disqualifying
early error originated from the ScriptBody and FunctionBody productions.

Add test cases to assert the behavior when it is disqualified by all
other relevant early errors: Block statements, `for` statements,
`for-of` statements, `for-in` statements, and Switch statements.

* Generate tests

* fixup! Add test cases for Annex B hoisting disqualifiers

* fixup! Add test cases for Annex B hoisting disqualifiers

Correct test case "info" meta-data.

* fixup! Add test cases for Annex B hoisting disqualifiers

Improve test bodies

* fixup! Generate tests
2016-07-11 16:37:42 -07:00
jugglinmike 2bfaa0d895 Improve coverage for class "name" inference (#718)
* Extend tests for class "name" inference

Ensure that when a class defines a static "name" method, that method
definition prevents the "name" inference behavior.

* Re-generate tests
2016-07-08 18:37:04 -07:00
jugglinmike a3fffa754b Improve coverage for "super" keyword (#687)
* Improve test coverage for `super` keyword

Add tests for SuperCall and SuperProperty, organized together in the
`test/language/expressions/super/` directory. For SuperProperty, include
tests for usage from within Object initializers and class bodies because
a different set of semantics are observable from each context.
2016-06-29 16:45:19 -07:00
Mike Pennisi 71f9559f11
Add tests for default parameters 2016-06-21 12:22:47 -04:00
Mike Pennisi 744cb4d2c9
Add templates for destructuring with dflt params 2016-06-21 12:20:36 -04:00
Mike Pennisi 8c8397573c Add test cases for spread operator
The operand of the spread operator may be an AssignmentExpression. Add
test cases which demonstrate this.
2016-06-11 17:42:50 -04:00
Mike Pennisi 2658524163 Add test templates for spread in array initializer
Formulate templates for the SpreadElement in an array initializer in
order to conform to existing pattern.
2016-06-11 17:27:19 -04:00
Leo Balter 2cf968cfad Merge pull request #651 from bocoup/generation-dstr-assign
Re-format destructuring assignment tests
2016-06-01 14:00:09 -04:00
Leo Balter 1e75730d5f Merge pull request #587 from bocoup/generation-annexb-fns
Add tests for Annex B "function in block" semantics (procedurally generated)
2016-05-31 17:45:48 -04:00
Mike Pennisi c24a206511 Re-format destructuring assignment tests
Utilize the test generation tool to increase coverage of destructuring
assignment semantics. Previously, only destructuring assignment in the
AssignmentExpression position was tested. With this change applied, the
same tests will assert expected behavior for destructuring assignment in
`for..of` statements, as well.

A limited number of tests are applied to the `for..in` statement as
well, but due to the iteration protocol observed by that statement, many
destructuring tests are not relevant, and others cannot be automatically
generated from this format.
2016-05-25 13:47:06 -04:00
Mike Pennisi b7d496942a Use distinct variable name within test case
In order to increase the clarity of generated output, select a name for
the test case variable that is not also used by a test template.
2016-05-19 15:06:13 -04:00
Mike Pennisi 95b5b13c16 Add test cases for the spread operator 2016-05-19 15:06:12 -04:00
Mike Pennisi c98b6ed4e6 Specify `esid` tag in test templates 2016-05-19 15:06:11 -04:00
Mike Pennisi cc7381d3b2 Add test cases for destructuring binding 2016-05-10 11:51:44 -04:00
Mike Pennisi be195c38ca Add omitted destructuring binding forms
Add test templates for destructuring binding as it occurs in
previously-overlooked productions (various IterationStatements and the
TryStatement).
2016-05-10 11:51:44 -04:00
Mike Pennisi 8c6b1320de Add assertion messages for function invocation 2016-05-10 11:51:44 -04:00
Mike Pennisi 0d09ea91d9 Add "features" tag to test templates 2016-05-10 11:51:32 -04:00
Mike Pennisi d5190e96df Specify `esid` tag in test templates 2016-05-10 11:39:22 -04:00
Mike Pennisi ad62d5b815 Add cases/templates for Annex B.3.3/B.3.4 2016-04-18 16:19:29 -04:00
Mike Pennisi 74bff6b3d5 Add initial set of generated test sources 2016-03-16 15:29:30 -04:00