Commit Graph

340 Commits

Author SHA1 Message Date
Leo Balter 7765873c3e
Refactor tests for the BigInt construtor 2017-08-25 15:56:11 -04:00
Robin Templeton 37beb36524
add BigInt tests 2017-08-24 15:58:14 -04:00
Leo Balter a7ccd3042b
Generate tests 2017-08-24 14:11:28 -04:00
Leo Balter 1624816d81 Re-Generate tests 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 dffbe50668 Generate tests 2017-08-16 15:11:44 -04:00
Marshall Roch eaffe8671c Fix description typo (#1180) 2017-08-15 19:05:33 -04:00
Rick Waldron da4b85d58d Remove incorrect early error machinery. Fixes gh-1175 (#1177) 2017-08-14 16:02:30 -04:00
Rick Waldron cc70c52547 Throw away tests
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-07-25 10:55:29 -04:00
Rick Waldron 5326cc5ded Generate tests
See e731114cff

Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-07-13 14:48:48 -04:00
Rick Waldron 38150b3535 Generate tests
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-06-28 15:49:02 -04:00
Rick Waldron 144d73ef27 Generate tests
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-06-28 12:10:19 -04:00
Rick Waldron 86209d8fd9 Make all harness/* file names consistent; update occurrences in test
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-06-28 11:53:58 -04:00
Mike Pennisi ef76e548a4 Re-generate tests 2017-06-28 11:24:36 -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 2dd8e8b2c4 Throw away tests
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-06-23 13:21:39 -04:00
Caio Lima 8f5afc2915 Generated tests for computed property Object rest destructuring 2017-05-22 23:05:35 -03:00
Leo Balter 5f04d2b1f3
Generate tests 2017-05-10 14:08:35 -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 c8e808bc69 Generate new tests for redeclarations in block- and switch-statements 2017-05-04 09:29:39 -07:00
André Bargull e0c29310d9 Generate tests for yield and await as identifier 2017-05-02 12:09:33 -07:00
André Bargull 490b2dc461 Remove manual tests for 'yield' in generators 2017-05-02 12:09:32 -07:00
André Bargull 3d8fe2af4c Add tests for contextual keywords with escape sequences 2017-05-02 12:09:29 -07:00
André Bargull 69735fd832 Move unary plus tests into correct directory 2017-05-02 12:09:26 -07:00
André Bargull 4494db10b7 Rename and update assignment early error tests 2017-05-02 12:09:25 -07:00
Leo Balter 0ad3d51fd9
Add an early error case for ({ async async }) 2017-05-01 12:29:23 -04:00
Leo Balter d93e15662f
Generate Tests 2017-04-25 15:56:28 -04:00
Leo Balter d74f58cddd
Generate tests 2017-04-21 15:26:46 -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
Mike Pennisi 2c0c3e7f96 Correct typo in copyright information 2017-04-18 12:23:22 -04:00
André Bargull d59e30c95e Remove execute bit from files (#976) 2017-04-13 16:24:07 -04:00
Caitlin Potter 53ab9ffd4e Generate tests 2017-04-10 18:29:53 -04:00
André Bargull faaa4685e4 Remove invalid async-flag from syntax error tests (#959) 2017-04-10 14:34:57 -04:00
Rick Waldron 3c79e9dbac Merge pull request #953 from leobalter/syg-async-lineterm
Update cases for async arrow fns with a line terminator
2017-04-07 16:25:51 -04:00
Leo Balter 6030e4ed71
Update object literal expressions for readability
After @rwaldron's feedback:

The purpose of the `!` operator is to evaluate an UnaryExpression,
coerce the result to a boolean value and then return the negated
value of that operation. But that's not what you're trying to do at
all—you just want to evaluate the expression to the right of the
operator, nothing more, nothing less. In this specific case, you
don't even really care about the evaluation, the goal is write
valid (or invalid, as the case may be) syntax that is will be
parsed according to a specific grammar rule that requires some
operator to signal that the thing is an expression and not a Block
Statement.
2017-04-07 11:34:59 -04:00
Daniel Ehrenberg 20536eabe1
Generate tests 2017-04-06 19:44:14 -04:00
Leo Balter 590d04edd2
Add info 2017-04-06 17:50:59 -04:00
Leo Balter 4941d46a28
Update cases for async fns with a line terminator 2017-04-06 16:06:42 -04:00
Shu-yu Guo 5038754462
Test for [no LineTerminator here] after 'async' for arrows and methods 2017-04-06 16:06:42 -04:00
Leo Balter 883db87a51
Generate tests 2017-04-06 15:33:33 -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
Leo Balter f48a41caed
Generate tests 2017-04-06 12:36:50 -04:00
Daniel Ehrenberg 6330eccfc4
Add feature flags for various tests 2017-04-06 12:18:03 -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 70870dc239
Generate tests 2017-03-27 21:44:04 -04:00
Leo Balter 8f0fd88ad9
Generate tests 2017-03-27 20:41:11 -04:00
Leo Balter 088ef77000
Generate tests 2017-03-27 17:19:19 -04:00
Leonardo Balter 1e74cfe336
Generate tests 2017-03-27 13:32:05 -04:00
Leo Balter 2adebecbfa
Generate tests 2017-03-27 13:21:14 -04:00
Leo Balter 3d7ae07295
Generate tests 2017-03-27 13:07:11 -04:00
Leonardo Balter 8525cdb165
Generate tests 2017-03-27 13:07:09 -04:00
Leonardo Balter 66f42efc99
Generate tests 2017-03-27 13:07:08 -04:00
Leonardo Balter 74b07de387
Generate tests 2017-03-27 13:07:06 -04:00
Leonardo Balter 42d993c45a
Normalize folder async generator expressions 2017-03-27 13:07:05 -04:00
Leonardo Balter 4459447eb7
Generate tests 2017-03-27 13:01:11 -04:00
Leonardo Balter 285888ada1
Generate tests 2017-03-27 12:54:18 -04:00
Leo Balter db9dc643e9
Generate tests 2017-03-27 12:17:57 -04:00
Leonardo Balter 92ac53f210
Generate tests 2017-03-20 14:50:53 -04:00
Leo Balter e45b2ae532 Add tests for computed __proto__ property keys (#916)
Fixes #904
2017-03-16 12:16:27 -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 368d483490
Generate tests 2017-03-14 17:42:04 -04:00
Leonardo Balter aa2c69960d
Generate tests 2017-03-14 15:13:10 -04:00
Leonardo Balter 7522a29f31
Generate tests 2017-03-14 14:58:33 -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 c017b4280b
Generate tests 2017-03-14 13:30:35 -04:00
Rick Waldron b0e9db8856
Remove invalid tests on parameters vs arguments list
Ref #822
2017-03-14 13:20:10 -04:00
Leonardo Balter 340543bc11
Rename top level 'name' and 'length' bindings
Fix 850
2017-03-14 12:43:24 -04:00
Leo Balter 2c1aed0db6 Fix duplicate function declarations (#905)
Fixes #771
2017-03-13 18:43:41 -04:00
Leo Balter 6ef9cef4a0 Generate tests for 16e66ece0 (#901) 2017-03-13 11:01:26 -04:00
Leo Balter 471bde9162 Add descriptions for async-iter suspended execution tests (#894)
Fixes #889
2017-03-13 09:59:42 -04:00
Leonardo Balter e54c471809
Generate tests 2017-03-09 10:30:09 -05:00
Leonardo Balter 0cc55bb44d
Generate tests 2017-03-06 16:25:14 -05:00
Leo Balter da3898d707 Merge pull request #884 from jugglinmike/test-generation-indentation
Extend test generation tool
2017-03-06 14:45:40 -05:00
⭐caitp⭐ 4914e47d0b Add tests for Async Generator flow control (#871) 2017-03-06 10:48:13 -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
Rick Waldron fdd2fa9b1c Rename $ => $262. Fixes gh-802 (#823)
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-03-01 16:34:15 -05:00
Leo Balter 4546006977 Merge pull request #855 from anba/fix-async-sab-class-tests
Change tests for `extends null` and Intl legacy constructor semantics

Ref tc39/ecma262#781
Ref tc39/ecma402#84
2017-03-01 15:56:41 -05:00
Mike Pennisi 37d5f8e5ef
Re-generate tests 2017-03-01 11:38:11 -05:00
Mike Pennisi 228851fbe4
Add tests for accessor names 2017-03-01 11:38:10 -05:00
André Bargull 8a4abc2a00 Replace __proto__ with non-Annex B alternative 2017-02-22 18:04:59 +01:00
Caitlin Potter 098f9ca3de Add tests for try/finally in async functions 2017-02-17 19:29:21 -05:00
André Bargull 204266794c Fix various test issues (#840)
test/annexB/built-ins/Date/prototype/setYear/time-clip.js
test/built-ins/Date/prototype/setFullYear/new-value-time-clip.js
test/built-ins/Date/prototype/setMonth/new-value-time-clip.js
- Don't try to test time-clip at the end points, because this is near
impossible to get right (needs to consider time zone offset, dst, local
mean time because of Africa/Monrovia, etc.).

test/built-ins/DataView/prototype/setFloat64/detached-buffer-after-toindex-byteoffset.js
test/built-ins/DataView/prototype/setInt16/detached-buffer-after-toindex-byteoffset.js
- Wasn't update to expect RangeError

test/built-ins/Function/internals/Construct/derived-this-uninitialized-realm.js
- Change ClassDeclaration -> ClassExpression to get completion value

test/built-ins/Function/prototype/toString/AsyncFunction.js
- Add missing \n in expected string
- Also fixed in gh-847

test/built-ins/global/global-object.js
- Add 'var' to make test pass in strict-mode

test/language/block-scope/syntax/redeclaration-in-block/attempt-to-redeclare-function-declaration-with-function-declaration.js
- This is allowed in sloppy mode when Annex B is implemented

test/language/expressions/async-generators/expression-yield-as-statement.js
- Fix calls to then()

test/language/module-code/namespace/internals/own-property-keys-binding-types.js
test/language/module-code/namespace/internals/own-property-keys-sort.js
- Tests weren't updated after removal of @@iterator from module
namespace objects

test/language/module-code/namespace/internals/set-prototype-of-null.js
- Fix syntax error

test/language/statements/async-function/early-errors-no-async-generator.js
- No longer valid now that async iteration proposal is at stage 3
2017-02-07 11:10:56 -05:00
Caitlin Potter 6391689a6b Add tests for async generator function expressions 2017-01-19 14:50:15 -05:00
Michael Ficarra a4a1dd551b fix expected raw value for invalid escape sequences in tagged templates (#800) 2016-11-22 11:45:39 -05:00
Josh Wolfe 4fd91d8904 fix incorrect tests for trailing commas (#787) 2016-11-11 09:44:38 -08:00
dop251 8982c3c3ab Reformat negative tests metadata (#785) 2016-11-11 09:43:36 -08:00
jugglinmike c9569a7e7e Improve coverage for YieldExpression (#681)
* Re-organize coverage for YieldExpression

* Extend test coverge for YieldExpression

* fixup! Extend test coverge for YieldExpression

Remove unused variables
2016-10-24 11:29:56 -07:00
jugglinmike 720c3cc8cc Update for new `eval` restrictions on `super` (#781)
A recent change to the specification [1] introduces parse-time errors
for certain usages of `super` within eval code. Modify all tests that
are affected by this change:

- Update the test bodies to accurately enforce the new semantics
- Rename files to better reflect the section of the specification that
  they enforce
- Update test meta-data
  - Change the `esid` meta-data to reflect the location of the relevant
    specification text
  - Remove the `es6id` meta-data as the behavior is no longer relatable
    to that specification
  - Introduce the `features` meta-data in cases where the test file's
    new location no longer reflects all required language features

[1] "Normative: Clarify rules around super inside eval"
    https://github.com/tc39/ecma262/pull/685
2016-10-24 10:43:44 -07:00
jugglinmike 71e573f7da Add tests for realm interactions (#688)
* Add tests for prototype realm inference

* Add tests for miscellaneous realm concerns

* Add tests for realm of spec-created Errors

In some cases, Error objects produced by the specification are
observable from ECMAScript code. Among these cases, some are further
differentiated in that they occur outside of any built-in function and
may be triggered through syntactic production directly. The current
realm record is commonly interpreted incorrectly under these
circumstances.

Add tests asserting that the expected realm record is used when
constructing such Error objects.

* Add tests for realm use in ArraySpeciesCreate

* Add tests for function realm retrieval

* Add tests for cross-realm behaviors of Symbols

* Add tests for GetValue and PutValue

* Add tests for realm of spec-created Arrays

In some cases, Arrays produced by CreateArrayFromList are observable
from ECMAScript code. Among these cases, two occur outside of any
built-in function and may be triggered through syntactic production
directly. The current realm record is commonly interpreted incorrectly
under these circumstances.

Add tests asserting that the expected realm record is used when
constructing arrays.

* Add test for spec-created object

* fixup! Add tests for realm of spec-created Errors

* fixup! Add tests for realm of spec-created Errors

* fixup! Add tests for prototype realm inference

* fixup! Add tests for miscellaneous realm concerns
2016-10-24 10:43:17 -07:00
Mike Pennisi ade6d2e384 Remove "NotEarlyError" object
Because expectations regarding error "phase" are now expressed via test
meta-data, the test runner may now enforce this requirement on negative
tests.

Remove the "NotEarlyError" from the project source. This reduces the
amount of domain knowledge required to author tests and lessens the
potential for inconsistencies between tests.
2016-10-19 15:24:22 -04:00
Mike Pennisi 7d4b1d28ae Re-format tests for SyntaxErrors
Authored via the following command:

   $ find test -type f -print0 | \
       xargs -0 sed \
         -i 's/^\(\s*\)negative:\s*SyntaxError\s*$/\1negative:\n\1  phase: early\n\1  type: SyntaxError/g'
2016-10-19 15:24:21 -04:00
Mike Pennisi cdc62ce0fa Re-generate tests 2016-10-19 15:24:20 -04:00
Mike Pennisi d5a3a962b2 Reformat negative ReferenceError tests 2016-10-19 15:24:18 -04:00
Mike Pennisi 24e774251a Test runtime errors with assertion utility method
Improve test consistency by using the `assert.throws` helper function to
assert runtime exceptions. Remove superfluous code.
2016-10-18 14:36:14 -04:00
Tim Disney 9d8d8b6920 Add tests to handle revised template literals (#764) 2016-10-03 13:59:53 -07:00
Michael Ficarra 894bbcc747 add PropertyDefinitionList evaluation order test (#739)
This test is being added because the committee is considering changing
this evaluation order (as discussed at the May 2016 Munich meeting). The
consequences of this spec change will be more clear as a test change
than a simple test addition.
2016-08-12 12:01:43 -04:00
jugglinmike c5cbf4122d Improve coverage for section 9 (#726)
* Assert creation of 'arguments' object

Ensure that the 'arguments' object is created in cases where it is not
required by the body but is required by the parameters.

* Add tests for cases that disable "arguments" map

* Add tests for NewTarget override of bound function

* Add test for properties of exotic String objects
2016-08-05 10:07:02 -07:00
Brian Terlson dbf251586e Add tests for async functions
Closes #479
2016-07-28 15:11:28 -07:00
Jeff Morrison b785fdf942 Tests for trailing commas in function arg lists (#733)
Adds tests for the proposal as described here:
http://jeffmo.github.io/es-trailing-function-commas/
2016-07-28 12:32:03 -07:00
jugglinmike da0a8e33f0 Improve coverage for section 14: Functions and Classes (#717)
* Add tests for early errors in functions

* Improve tests for class accessors

Use the `propertyHelper.js` utility in order to functionally test the
property descriptors of class methods.

* Remove redundant tests

The semantics of an IdentifierReference as a PropertyDefinition within
an object initializer are exhaustively tested by the files in this
directory whose name match the pattern `prop-def-id-*.js`.

Delete the redundant tests in favor of the more descriptively-named and
more exhaustive alternatives.

* Rename tests

* Update test names to be more descriptive

* Add tests for property descriptors of accessors

* Add tests for runtime error during method dfn

* Add test for observable iteration
2016-07-08 18:43:32 -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
Leo Balter ca7018bc7e Use global values on typeof tests for Number values (#713)
This is a pure miscellaneous change to use global values of NaN and Infinity instead of their namespaced equivalents.
Ref 9ae0567a50 (r69049894)
cc @suwc
2016-07-06 14:41:22 -07:00
Mathias Bynens 3a5a09eba2 Ensure U+180E is no longer considered whitespace
Ref. https://hashseed.blogspot.com/2014/08/in-ecma-262-5.html
Ref. https://github.com/tc39/ecma262/pull/300#issuecomment-181376767
Ref. 9b10d2a597

Fix and add @anba’s U+180E tests
2016-07-06 10:11:32 -04:00
jugglinmike ab4ff914fb Add tests for assignment target validation of new ES2015 forms (#693)
This re-factors some existing Sputnik tests to be more targeted and to use a
pattern that can be generalized to other forms. We could test these all day,
but I've limited myself to forms introduced in ES2015, specifically
YieldExpression and new.target. Note that SpiderMonkey incorrectly throws a
SyntaxError for these.
I thoughtlessly wrote ReferenceError tests for yield = 1 until I realized
that such productions are not actually recognized by the grammar, so the early
errors do not apply. Instead, I've added a negative syntax test for that case.

* Refactor test for valid cover

* Add tests for ValidSimpleAssignmentTarget

Ensure that constructs introduced in ES2015 are disallowed as assignment
targets, with or without a "cover" grammar.

* Add test for grammar precedence of YieldExpression
2016-07-05 15:20:56 -07:00
jugglinmike e290a337b8 Improve coverage for section 12, "Expression" (#695)
* Add missing test for early error

* Add missing test for WithBaseObject

* Improve coverage for `new.target`

* Add test for deletion of SuperReference

* Add tests for `in` keyword restrictions

* fixup! Improve coverage for `new.target`
2016-07-01 11:23:43 -07:00
Leo Balter e49d2661a8 Improve assertions comparing values to NaN (#690)
The global isNaN is not precise at all, and Number.isNaN is an ES6 feature that makes it preferrable to use assert's sameValue for NaN values, as it handles it internally using the comparison.
2016-07-01 11:22:55 -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 655a880852
Add tests for arguments obj with dflt parameters 2016-06-21 12:22:49 -04:00
Mike Pennisi 7e3019e382
Add tests for function length with dflt parameters 2016-06-21 12:22:49 -04:00
Mike Pennisi 7dcccfcca6
Add tests for use of `yield` in default parameters 2016-06-21 12:22:48 -04:00
Mike Pennisi e5f1740411
Generate tests 2016-06-21 12:22:48 -04:00
Mike Pennisi a969e853e7
Generate tests 2016-06-21 12:20:36 -04:00
Leo Balter 88bc7fe758 Merge pull request #672 from bocoup/spread-coverage
Improve coverage for "spread" operator
2016-06-14 09:47:35 -04:00
Mike Pennisi f91886421d Generate tests 2016-06-11 17:44:14 -04:00
jugglinmike a2b3370b0b Add tests for additional uses of @@toPrimitive (#666) 2016-06-10 15:08:59 -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 8f23cd6775 Merge pull request #607 from bocoup/envs
Add tests for Lexical Environment management
2016-05-30 16:13:33 -04:00
Mike Pennisi 88879de735 Generate tests 2016-05-25 17:29:27 -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
Leo Balter 230dee1676 Merge pull request #585 from bocoup/generation-spread
Add tests for the spread operator (procedurally generated)
2016-05-19 18:15:48 -04:00
Mike Pennisi 18a2ba862d Generate tests 2016-05-19 15:09:41 -04:00
jugglinmike c6a152558d Add tests for Annex B extn: __proto__ in obj init (#633) 2016-05-19 13:01:07 -04:00
jugglinmike a0ddf7bfe4 Add tests for generator intrinsic default proto (#636) 2016-05-19 12:54:49 -04:00
Mike Pennisi d4b263ccbb Generate tests 2016-05-10 11:57:37 -04:00
Ian Halliday 022888be9e Remove duplicate front matter keys (#621)
Fixes #620
2016-05-06 13:41:33 -04:00
Mike Pennisi 74d0c1d124 Add equivalent tests for fn param-body boundary
These tests are based on the files introduced in the commit titled, "Add
tests for Lexical Environment management."
2016-04-28 09:47:18 -04:00
Mike Pennisi c9a93c1d1c Add equivalent tests for non-strict fn parameters
These tests are based on the files introduced in the commit titled, "Add
tests for Lexical Environment management."
2016-04-28 09:47:08 -04:00
Mike Pennisi 9c3ff83c00 Add equivalent tests for non-strict fn bodies
These tests are based on the files introduced in the commit titled, "Add
tests for Lexical Environment management."
2016-04-28 09:46:03 -04:00
Mike Pennisi 3b3bd06819 Add tests for Lexical Environment management
Add tests that assert the management of the running execution context's
LexicalEnvironment and VariableEnvironment components, as created by the
following abstract operations:

- NewDeclarativeEnvironment
- NewObjectEnvironment
- NewFunctionEnvironment

Many tests require the use of non-strict direct eval, meaning they may
not be run in strict mode. This does not effect coverage because the
semantics in these cases are not observable from strict mode code.

Some situations require the creation of a binding, but this binding has
no relevance to the test itself. In these cases, use names consisting
solely of the underscore character (`_`).

Avoid the use of Block statements wherever possible, as these trigger
the creation of additional environments which may interfere with the
behavior under test.
2016-04-28 09:44:41 -04:00
Mike Pennisi 73a7e23061 Re-generate tests 2016-04-26 16:13:32 -04:00
Mike Pennisi 784824895d Extend coverage for eval code
Closes #572

Introduce tests for new semantics for ES2015 features such as
lexically-scoped bindings. Also add tests for semantics defined in prior
editions of the specification but not yet covered in this test suite.
2016-04-25 16:43:48 -04:00
Mike Pennisi 7630e1763d Re-organize tests for eval
Limit tests in `language/expressions/call/` and `built-ins/eval/` to
only assert details that are directly related to the invocation pattern.
Re-organize all other tests within the `language/eval-code/` directory,
further categorizing each as `direct` or `indirect` as appropriate.
Remove the extraneous "executable" flag from those files which carried
it.
2016-04-25 16:36:36 -04:00
Gorkem Yakin 7f88f29328 Merge branch 'bocoup/global-object' 2016-04-25 11:09:49 -07:00
Mike Pennisi eb644bb2da Reduce reliance on `fnGlobalObject.js`
This harness function is not necessary in the majority of cases in which
it is used. Remove its usage to simplify tests and decrease the amount
of domain-specific knowledge necessary to contribute to the test suite.

Persist the harness function itself for use by future tests for ES2015
modules (such a helper is necessary for tests that are interpreted as
module code).
2016-04-25 11:09:21 -07:00
Mike Pennisi 3d68fcc063 Increase coverage for Symbol constructor
Add new tests for invocation requirements; re-organize existing files
according to the language feature under test.
2016-04-25 10:59:22 -07:00
Mike Pennisi f7aa31b41f Remove over-specified tests
Except for a small set of expected input/output pairs, both ES5 and
ES2015 define the expected return value of these methods in terms of an
"implementation-dependent approximation." This makes it inappropriate to
enforce expectations for specific values, even if expressed imprecisely.
2016-04-18 14:36:49 -04:00
jugglinmike 26676beab5 Add tests for IteratorClose in dstr assignment (#524)
The files in this patch are organized according to the following naming
scheme:

Prefix             | Grammar production
-------------------|-------------------
`array-empty-`     | ArrayAssignmentPattern : [ ]
`array-elision-`   | ArrayAssignmentPattern : [ Elision ]
`array-rest-`      | ArrayAssignmentPattern : [ Elisionopt AssignmentRestElement ]
`array-elem-`      | ArrayAssignmentPattern : [ AssignmentElementList ]
`array-elem-trlg-` | ArrayAssignmentPattern : [ AssignmentElementList , Elisionopt AssignmentRestElementopt ]

Suffix             | Intent
-------------------|-------
`-abpt-close-err`  | The assignment evaluation returns an abrupt completion, and the iterator's `return` method throws an error
`-abpt-close-skip` | The assignment evaluation returns an abrupt completion, but IteratorClose is not invoked
`-abpt-close`      | The assignment evaluation returns an abrupt completion, and IteratorClose is invoked as specified
`-get-err`         | Abrupt completion returned from GetIterator
`-nrml-close-err`  | The assignment evaluation completes, and the iterator's `return` method throws an error
`-nrml-close-null` | The assignment evaluation completes, and the iterator's `return` method returns a non-Object value (there is no corresponding `-abpt-` suffix because the algorithm does not reference the return value in those cases)
`-nrml-close-skip` | The assignment evaluation completes, but IteratorClose is not invoked
`-nrml-close`      | The assignment evaluation completes, and IteratorClose is invoked as specified

Not all suffixes are appropriate for all productions. Suffixes have been
simplified in cases where less specificity is necessary to disambiguate
test cases.
2016-04-18 14:33:21 -04:00
Mike Pennisi 74bff6b3d5 Add initial set of generated test sources 2016-03-16 15:29:30 -04:00
Gorkem Yakin ed32ae6f4a Convert "info" to "description" 2016-02-23 14:24:08 -08:00
Rick Waldron e0afd42914 descriptions and info 2016-02-23 16:42:11 -05:00
Rick Waldron 79dfcf3e85 Restore missing object definitions 2016-02-22 19:17:24 -05:00
Rick Waldron b92e68646d improved info and description 2016-02-22 16:49:00 -05:00
Rick Waldron 2a962f74be id => esid 2016-02-22 14:47:47 -05:00
Rick Waldron 2a112a3190 Exponentiation Operator tests 2016-02-22 14:47:47 -05:00
Leonardo Balter bf782c8421 s/id/esid
Fixes #477
2016-02-22 09:47:42 -05:00
Leonardo Balter ebda746e6a Replace es7id tags with id 2016-02-12 16:22:56 -08:00