Commit Graph

1219 Commits

Author SHA1 Message Date
Mike Pennisi 23d566209a Make asynchronous test configuration explicit
For asynchronous tests, the contract between test file and test runner
is implicit: runners are expected to inspect the source code for
references to a global `$DONE` identifier.

Promote a more explicit contract between test file and test runner by
introducing a new frontmatter "tag", `async`. This brings asynchronous
test configuration in-line with other configuration mechanisms and also
provides a more natural means of test filtering.

The modifications to test files was made programatically using the
`grep` and `sed` utilities:

    $ grep "\$DONE" test/ -r --files-with-match --null | \
        xargs -0 sed -i 's/^\(flags:\s*\)\[/\1[async, /g'
    $ grep "\$DONE" test/ -rl --null | \
        xargs -0 grep -E '^flags:' --files-without-match --null | \
        xargs -0 sed -i 's/^---\*\//flags: [async]\n---*\//'
2016-02-12 13:03:19 -05:00
Rick Waldron 5cb97c293b Merge pull request #497 from tschneidereit/master
Enable parallel test execution in console runner
2016-02-08 16:57:47 -05:00
Till Schneidereit 7ae29d49ae Enable parallel test execution in console runner
Adds a `-j`/`--workers-count` parameter to `tools/packaging/test262.py`, defaulting to `[number of cores] - 1`.

Speeds up running the test suite by about ~3x on my 4-core machine, with the SpiderMonkey shell. This could certainly be optimized more by just appending test results to per-thread lists and merging them at the end, but it's better than nothing.
2016-02-08 17:40:16 +01:00
Gorkem Yakin 26aeed1428 Merge pull request #494 from bocoup/indexof-zero
Add tests for zero conversion on Array#indexOf and Array#lastIndexOf
2016-02-05 15:38:45 -08:00
Leonardo Balter 26785d40ca Add tests for zero conversion on Array#indexOf and Array#lastIndexOf
Fixes #435
2016-02-05 19:17:26 -02:00
Gorkem Yakin 7cd2112bf1 Merge pull request #490 from bocoup/reorg-obj
Move tests for object literals
2016-02-05 09:04:40 -08:00
Gorkem Yakin ea89b2ea18 Merge pull request #487 from jugglinmike/tco
Add tests for tail-call optimization
2016-02-05 09:00:27 -08:00
Leo Balter d549225f91 Merge pull request #492 from bocoup/id-tag-docs
Update contribution guidelines
2016-02-04 19:33:10 -02:00
Mike Pennisi 60afce3636 Update contribution guidelines
It was recently decided to prefer the new `id` tag over the existing
`es5id` and `es6id` tag when authoring tests. Update the contribution
guidelines to reference the new tag.
2016-02-04 15:37:02 -05:00
Mike Pennisi 700f1469e1 Move tests for object literals
Test262 defines tests for expression-producing syntactic forms within
the `language/expressions/` directory. Most tests for object literals
conform to this structure, but 12 such tests were added to the
`language/object-literal/` directory. Move these tests to the canonical
location for object literals.
2016-02-04 09:58:31 -05:00
Mike Pennisi 4dc81d3788 Add tests for tail-call optimization
ECMAScript 2015 introduced tail call optimization for function calls
occuring in a number of positions in the grammar. Assert expected
behavior by triggering a large (but configurable) number of recursive
function calls in these positions. Compliant runtimes will execute such
programs without error; non-compliant runtimes are expected to fail
these tests by throwing an error or crashing when system resources are
exhausted.
2016-02-01 13:20:17 -05:00
Gorkem Yakin fbad34959f Replace "id" with "ID" 2016-01-29 09:29:09 -08:00
Leonardo Balter cb754d2450 Document frontmatter's id tag
Fixes #477
2016-01-29 09:24:03 -08:00
Gorkem Yakin 39facabd9b Merge pull request #483 from bocoup/fix-object-case
Fix case sentitive error on test/built-ins/Object folder
2016-01-29 09:13:59 -08:00
Leonardo Balter e3c5f66a40 Fix case sentitive error on test/built-ins/Object folder
Fixes gh-482
2016-01-29 10:02:25 -05:00
Gorkem Yakin 052bf2379b Merge pull request #475 from bocoup/completion-reform
Tests for ES2015/2016 Completion Reform
2016-01-26 12:38:27 -08:00
Leo Balter 23d0f459a8 Merge pull request #476 from evilpie/error-message-hang
Stop test262 from hanging Spidermonkey with an unimportant error message
2016-01-23 23:34:45 -05:00
Tom Schuster 97c61513d8 Stop test262 from hanging Spidermonkey with an unimportant error message 2016-01-23 17:41:59 +01:00
Mike Pennisi e62d43c815 Update tests according to ES2016 draft semantics
The ES2016 draft further refines the completion values for `if` and
`with` statements. Two tests must be removed outright because the
completion value in those cases is no longer accessible from the
runtime.
2016-01-22 15:00:54 -05:00
Mike Pennisi 407b8964ce Add tests for ES2015 completion reform
In order to facilitate proper tail calls, ES2015 modified the completion
value of a number of statements.

These tests use `eval` to verify the new values.
2016-01-22 15:00:03 -05:00
Gorkem Yakin afd3c5783e Merge pull request #469 from bocoup/improve-typed-arrays-coverage
Basic coverage for the %TypedArray% object
2016-01-21 09:36:51 -08:00
Leonardo Balter 1a64295a0b Replace TypedArray constructor invalid length test for ES2016 specs
Replace a ES2015 test where calling the TypedArray constructor with
a floating number triggered a RangeError. Within the ES2016 specs,
the same call will trigger a TypeError, as the result for
`SameValue(NewTarget, here)` will be checked before.
2016-01-21 10:41:16 -05:00
Mike Pennisi 8f8b663ce7 Add tests for TypedArray intrinsic 2016-01-21 10:41:16 -05:00
Gorkem Yakin e56687f5e9 Merge pull request #473 from bocoup/for-inof-exprs
Add tests for iterator expression in ForIn/Of head
2016-01-19 18:42:11 -08:00
Gorkem Yakin 738a24b109 Merge pull request from jugglinmike/improve-promise-coverage-resolve (closes #463) 2016-01-19 16:33:23 -08:00
Mike Pennisi b1b4f04494 Add tests for Promise Resolve Functions
Remove files that tested both PerformPromiseThen and
PromiseResolveFunction in favor of new tests that test
PromiseResolveFunction more directly and completely.
2016-01-19 16:32:36 -08:00
Gorkem Yakin f3f068d119 Merge pull request #471 from littledan/patch-1
Update README.md
2016-01-19 15:12:25 -08:00
littledan 01d785946e Update README.md 2016-01-19 13:10:39 -08:00
Mike Pennisi 19762b927a Add tests for iterator expression in ForIn/Of head
Although the `for..in` statement allows Expressions to define the
iterator, only an AssignmentExpression may occupy this position in the
`for..of` statement.
2016-01-19 12:27:33 -05:00
Gorkem Yakin 4a862fba95 Merge pull request #465 from jugglinmike/improve-promise-coverage-all-race
Improve Promise coverage: PerformPromiseAll & PeformPromiseRace
2016-01-15 16:19:18 -08:00
Gorkem Yakin e37df76526 Merge pull request #457 from anba/length_name_coverage
Coverage for length and name function properties
2016-01-15 10:26:30 -08:00
André Bargull 33395b52f5 Add basic surface tests for NativeErrors 2016-01-15 18:13:36 +01:00
André Bargull 1bac79fbf3 Add basic surface tests for TypedArrays 2016-01-15 18:13:08 +01:00
André Bargull 42edfd6e89 Add missing tests for "length" and "name" properties of %TypedArray% built-in functions 2016-01-15 18:12:42 +01:00
André Bargull ca61d9b876 Add missing tests for "length" and "name" properties of built-in functions
Note: Already uses the updated DataView function lengths from tc39/ecma262#266 (ES2016 Draft 2015-12-20)
2016-01-15 18:12:05 +01:00
André Bargull bb1bda6dfd Add missing tests for "length" and "name" properties of AnnexB built-in functions 2016-01-15 18:11:38 +01:00
André Bargull 5e3eed63b9 Move Symbol.species and AnnexB tests to new subfolders 2016-01-15 18:11:03 +01:00
Gorkem Yakin 4d418a9fe7 Merge pull request #468 from bocoup/subclassing
Subclassing built-in objects
2016-01-14 11:48:57 -08:00
Gorkem Yakin cd60a6d83a Merge pull request #464 from jugglinmike/improve-promise-coverage-cap
Improve Promise coverage: NewPromiseCapability
2016-01-13 16:49:47 -08:00
Gorkem Yakin 9d48bb0875 Merge pull request #462 from jugglinmike/improve-promise-coverage-reject
Improve Promise coverage: Promise Reject Function
2016-01-13 16:49:21 -08:00
Gorkem Yakin 8e76f6ca62 Merge pull request #461 from jugglinmike/improve-promise-coverage-then
Improve Promise coverage: Promise.prototype.then
2016-01-13 16:49:17 -08:00
Gorkem Yakin c9764dc5b5 Merge pull request #460 from bocoup/destructuring-binding
Destructuring Binding - syntax and simple initialization
2016-01-13 16:03:24 -08:00
Gorkem Yakin e7f4e4324a Merge pull request #455 from anba/instanceof_op
Add tests for instanceof operator when prototype property is primitive or getter
2016-01-13 14:59:17 -08:00
Leonardo Balter 42d1a10d6d fixup! Add tests for Array - calling super with a single argument 2016-01-13 13:28:00 -05:00
Gorkem Yakin 34a917f55b Merge pull request #453 from ljharb/object_values_entries
Object.{values,entries} tests
2016-01-12 17:43:08 -08:00
Leonardo Balter c99ace29d7 Move subclass tests to test/language/statements/class/subclass/builtin-objects 2016-01-12 16:45:03 -05:00
Leonardo Balter 705940d205 Add tests for Subclassing the built-in Proxy Object 2016-01-12 16:40:19 -05:00
Leonardo Balter d30e98df53 Add tests for Subclassing the built-in Promise Objects 2016-01-12 16:39:00 -05:00
Leonardo Balter 85ee704ad7 Add tests for Subclassing the built-in GeneratorFunction Objects 2016-01-12 15:17:59 -05:00
Leonardo Balter 4e079a8cab Add tests for Subclassing the built-in DataView Objects 2016-01-12 14:02:00 -05:00