Commit Graph

503 Commits

Author SHA1 Message Date
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
Leo Balter 882b3cc0d0 Fix frontmatter tags (#936) 2017-03-27 16:22:59 -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 da22db06d1
Generate tests 2017-03-14 16:30:12 -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 763649d268 Fix runtime error tests previously marked as early errors (#881)
Fixes #877
Ref #872
2017-03-13 11:09:04 -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
Kevin Gibbons 975e54de17 Top-level `let undefined` is a runtime error, not an early error. (#872)
The error occurs in [GlobalDeclarationInstantiation](https://tc39.github.io/ecma262/#sec-globaldeclarationinstantiation), which is runtime semantics.
2017-03-02 15:37:22 -05:00
Shu-yu Guo e262dcd021 Test that @@unscopables is looked up once for inc/dec. (#869) 2017-03-02 13:15:56 -05:00
André Bargull 2871a9c8ed Update tests for cyclic module dependencies through export* (#868)
Cyclic dependencies are no longer an error per
https://github.com/tc39/ecma262/pull/783.
2017-03-01 16:59:53 -05:00
André Bargull 6b09ad0459 Update YAML frontmatter of some tests to be compatible with monkeyYaml (#862) 2017-03-01 16:35:37 -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
arai-a d93bee595e Add some tests for execution order for yield* in async generator (#844) 2017-02-27 15:40:19 -08:00
André Bargull 7e94b8b7ac Fix executor arguments validation in Promise subclass test 2017-02-22 18:05:08 +01:00
André Bargull 8a4abc2a00 Replace __proto__ with non-Annex B alternative 2017-02-22 18:04:59 +01:00
André Bargull c16359bc3c Update tests for classes extending null
Per https://github.com/tc39/ecma262/pull/781
2017-02-22 18:04:43 +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
Caio Lima c2eacd956e Adding test cases to validate property descriptors on cases of mapped arguments (#815) 2017-01-17 10:27:40 -05:00
Adam Klein 4ff7e4342e Fix test for instantiating a class extending null (#813)
The sameValue assertion should be that the [[Prototype]] is
equal to the class's prototype, not the constructor.
2016-12-28 17:18:19 -08:00
Kevin Gibbons a73221eb8f mark namespace object toStringTag as non-configurable (#811) 2016-12-28 14:16:24 -08:00
Adam Klein b5edd1256c Add test for setting a module namespace object's prototype to null (#805)
The behavior changed from returning false to true in
https://github.com/tc39/ecma262/commit/13906140a
2016-12-28 10:58:15 -08:00
Kevin Gibbons 03453d6098 Remove tests for module namespace iterator (#810) 2016-12-28 10:57:46 -08:00
Kevin Gibbons 3b9953d65c remove last usage of arguments.caller (#812) 2016-12-28 10:54:02 -08:00
Kevin Gibbons fcc9e07265 Add test for extending a constructor with null .prototype (#806) 2016-12-21 01:30:06 -05:00
Kevin Gibbons 3ed2c78600 Avoid writing to top-level vars named "top", for browser compat (#794)
The HTML spec requires browsers define a non-configurable property
of the global (window) object named "top". This makes it
impossible for a browser to successfully run a test in strict mode
if said test attempts to write to a global variable named "top".
2016-11-22 12:02:40 -05:00
Kevin Gibbons c779cba592 Remove tests for arguments.caller (#797) 2016-11-22 11:59:37 -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
Kevin Gibbons b4c633fc4f Add test for inequality of RegExps created from the same source (#776) 2016-10-20 11:41:31 -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 0c29e6de86 Reformat miscellaneous negative tests
The expected errors in these tests cannot be asserted with the
`assert.throws` helper function for various reasons. Re-format their
meta-data according to the latest design in order to more precisely
describe test expectations.
2016-10-19 15:24:19 -04:00
Mike Pennisi 203b234fc0 Reformat negative SyntaxError tests (runtime)
These tests specifically concern error produced from the global scope,
precluding the use of the `assert.throws` helper function.
2016-10-19 15:24:18 -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
Joseph Pecoraro fb61ab44eb Fix incorrect generator syntax (#761) (#762) 2016-10-14 15:58:46 -07:00
jugglinmike b9d6fec9ac Correct name of fixture file (#775)
The file previously named `values-binding-types_.js` is not intended to
be interpreted as a test. Therefor (in accordance with the project's
`INTERPETING.md` file), its name should include `_FIXTURE` as a suffix.
2016-10-14 11:04:47 -07:00
Tim Disney 9d8d8b6920 Add tests to handle revised template literals (#764) 2016-10-03 13:59:53 -07:00
jugglinmike 4ffee35d89 Add tests for surrogate pairs with RegExp atoms (#722) 2016-08-25 13:29:51 -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
Tom Care 8a6d7a49ee Merge pull request #711 from bocoup/audit2016-section-21-regexp
Improve coverage for section 21: RegExp
2016-08-04 16:22:18 -07:00
Yusuke Suzuki dfd1fb3a97 Fix incorrect value retrieving in module-code test (#741)
Fix language/module-code/namespace/internals/get-own-property-str-found-init.js.
2016-08-04 11:19:36 -04:00
Yusuke Suzuki e2fb909a1d Fix importing filename in module-code/instn-star-err-not-found.js test
Fix the incorrect module filename.
2016-07-30 15:08:26 -04: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
Tom Care 9ec41dfabd Merge pull request #719 from bocoup/audit2016-section-15
Improve coverage for section 15: Scripts and Modules
2016-07-20 14:28:29 -07:00
jugglinmike b9e21138cc Add tests for script interactions (#689)
ECMA262 allows for an arbitrary number of "ScriptJob"s to run in a given realm.
Although there is no standard mechanism for enqueuing these jobs, many
implementations offer this functionality through custom APIs. In those hosts,
the semantics describing script interactions are directly observable.
In order to guarantee conformance to the specification in advance of a
standardized API, Test262 now requires that hosts provide a $.evalScript
function whose behavior is defined in the project's "INTERPRETING.md" file.
Use this host-provided API to ensure that implementations correctly observe the
specification text that dictates script interactions.
(In writing these tests, I noticed some gaps in coverage that are observable
from a single script execution. This patch includes a dedicated commit for
these tests that do not require $.evalScript.)

* Improve coverage of GlobalDeclarationInstantiation

* Add tests for script interactions

Use the host-provied `$.evalScript` method to assert conformance to the
specification text that defines script interactions.

* fixup! Improve coverage of GlobalDeclarationInstantiation
2016-07-19 18:02:05 -07:00
Tom Care 163fae3e68 Merge pull request #715 from bocoup/audit2016-section-13
Improve coverage for section 13, "Statements and Declarations"
2016-07-12 13:51:15 -07:00
jugglinmike 35206ee85b Add test for subclassing bound functions (#720)
The semantics under test have been incorrectly implemented by the
SpiderMonkey engine.
2016-07-11 13:46: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