5830 Commits

Author SHA1 Message Date
jugglinmike
83483b7310 Consolidate harness tests (#2374) 2019-09-27 16:24:02 -04:00
jugglinmike
5757d60e17 Correct syntax in generated tests (#2373)
Prior to the application of this patch, the modified test template
included an unintentional syntax error. This caused all generated tests
to spuriously satisfy the expectation for an error.

Correct the syntax in the test template and regenerate the tests,
ensuring that when engines report a syntax error, they are demonstrating
the behavior which the tests were designed to verify.
2019-09-27 16:22:56 -04:00
Mike Pennisi
d4a91a163b Improve coverage: function declarations
Previously, these tests were limited to strict mode. The syntactic
restriction under test also applied outside of strict mode even when
Annex B is observed, so configure the tests to also run outside of
strict mode.
2019-09-27 15:39:10 -04:00
Mike Pennisi
9cd62ffbd7 Improve coverage: ctor props of the global object
Prior to this commit, the descriptors of the constructor properties of
the global object were verified inconsistently, many independent
assertions occured in the same file, and that file test was poorly
located.

Restructure the relevant tests to improve coverage, follow convention,
and promote discoverability.
2019-09-27 15:39:10 -04:00
Mike Pennisi
1f079a3525 Improve coverage: func props of the global object
Prior to this commit, the descriptors of the function properties of the
global object were verified inconsistently, many independent assertions
occured in the same file, and that file test was poorly located.

Restructure the relevant tests to improve coverage, follow convention,
and promote discoverability.
2019-09-27 15:39:10 -04:00
Mike Pennisi
f8957be8a7 Improve coverage: value props of the global object
Prior to this commit, the enumerability of the value properties of the
global object were only verified in strict mode, the assertions occured
in the same file, and that file test was poorly located.

Restructure the relevant tests to improve coverage, follow convention,
and promote discoverability.
2019-09-27 15:39:10 -04:00
Mike Pennisi
f5d60d4192 Improve coverage
The modified tests are equally valid in strict mode and outside of
strict mode. Remove the flag which limits their use to only one of these
two contexts. Rename tests using the legacy ES5-based naming scheme to
remove the pattern which designates strict mode.
2019-09-27 15:39:10 -04:00
Leo Balter
8d4c5f502f Generate tests 2019-09-27 13:23:44 -04:00
Leo Balter
2e82d31eac Add tests for evaluation and export declarations in TLA 2019-09-27 13:23:44 -04:00
Leo Balter
69bf8fb0f8 Update tests for top-level await 2019-09-27 13:23:44 -04:00
Leo Balter
32bb36f5e4 Tests for TLA module evaluation 2019-09-26 14:28:56 -04:00
Frank Yung-Fong Tang
0213936e95 remove test for abandon ecma402/pull/345 (#2368)
https://github.com/tc39/ecma402/pull/345
2019-09-26 14:23:24 -04:00
Mike Pennisi
a9111d7144 lint: add rule to verify use of harness files
Verify that every test file which references a harness file using the
"includes" directive also contains at least one reference to a value
defined in the harness file.

To support this check, extend each harness file with a list of values
which it defines.
2019-09-25 14:00:50 -04:00
Mike Pennisi
bb5a6622d4 lint: Compute ergonomic name for tests
The command-line interface to Python's "unittest" module allows users to
run tests by name, e.g.

    $ test.py TestLinter.test_foo

If the tests include a period, they cannot be referenced in this way.
Rename the tests to omit the filename extension so that they may be
referenced from the command-line in this way.
2019-09-25 14:00:50 -04:00
Mike Pennisi
f38748efc1 lint: Increase isolation between tests and project
Prior to this commit, the tests for the linter partially depended on
project files. This coupling risks churn in the tests: if the needs of
the project change (e.g. a harness file is modified), then the linter
tests would need to be updated. It also made the tests more difficult to
understand because the input was both larger and more complicated than
necessary to exercise the relevant functionality.

Execute the tests in the context of the fixture directory and introduce
minimal support files that serve the same purpose as the corresponding
project files.
2019-09-25 14:00:50 -04:00
Mike Pennisi
1e4e524251 Update tests to use APIs defined by included files
The `$DETACHBUFFER` function is the preferred mechanism for detaching
array buffers.

Likewise, `verifyNotWritable` is the preferred mechanism for asserting
lack of writability.
2019-09-25 13:59:24 -04:00
Mike Pennisi
f26c2a11bd Remove unnecessary "includes" directives
The values defined by the referenced files are not used by these tests.
This makes their inclusion superfluous, which needlessly increases the
time to execute the tests and may confuse some readers.
2019-09-25 13:59:24 -04:00
jugglinmike
ce2dfd49d1 Correct bug in property helper (#2364)
Allow the property helper to be used to verify the configurability of
the global "Object" property.
2019-09-24 16:05:30 -04:00
Leo Balter
38ffce541d ASI after do-while in the same line 2019-09-24 14:16:40 -04:00
Nicolò Ribaudo
5de1bb4cd5 Add missing used features to private fields tests (#2361) 2019-09-24 13:51:47 -04:00
Nicolò Ribaudo
7697d3a1d5 Test specific error in super-private-access-invalid.case (#2355)
Without declaring #x in the class body, the thrown error could have been
about the undeclared private name rather than about the SuperProperty
2019-09-24 13:51:10 -04:00
Leo Balter
fa3d4a5190
Fix jsc execution in Circle CI (#2363) 2019-09-24 13:48:08 -04:00
Leo Balter
a03455a080
Uncomment lines (#2360)
Ref #2353

This uncomment lines meant to be in the code for the graceful end of the async GC executions.
2019-09-23 13:49:32 -03:00
Leo Balter
3bfb341203 Fixes after test feedback 2019-09-23 12:26:02 -04:00
Leo Balter
a0e3f37134 Documentation 2019-09-23 12:26:02 -04:00
Leo Balter
08844700fe Update tests for GC hook, apply async
- Fix incorrect tests for WeakRefs

Ref #2239
Fixes #2260
Fixes #2256
2019-09-23 12:26:02 -04:00
Leo Balter
7134634aa4 Revert "Remove tests based on the $262.gc hook"
This reverts commit d6d37f2f4399ef74a096b74b91f526758cab933f.
2019-09-23 12:26:02 -04:00
Alexey Shvayka
17685735e1 Add "proto-from-ctor-realm" tests for async functions (#2342)
* Add AsyncFunction test

* Add AsyncGeneratorFunction test
2019-09-20 15:27:32 -03:00
Caio Lima
543cc598de Adding tests to verify early error when mixing private static and instance accessors (#2316) 2019-09-20 15:27:03 -03:00
Nicolò Ribaudo
edafc79523 Add missing feature to prod-private-method-initialize-order.case (#2354) 2019-09-19 11:48:06 -03:00
Leo Balter
96d6bd0781
Split deepEqual tests requiring bigint (#2352) 2019-09-18 17:55:27 -03:00
Leo Balter
0fd3cf4d24
Some cleanup follow ups (#2351) 2019-09-18 14:15:53 -03:00
Ron Buckton
1056d8fde9 Add tests for regexp-match-indices (#2309)
* Add tests for regexp-match-indices

* Add tests for unicode matches based on presence of /u flag

* Added deepEqual helper, PR feedback
2019-09-18 13:39:12 -03:00
Benjamin E. Coe
c41a8ac1a0 test: adding async optional chaining tests (#2337)
* test: adding async optional chaining tests

* Update test/language/expressions/optional-chaining/member-expression-async-identifier.js

Co-Authored-By: Leo Balter <leonardo.balter@gmail.com>

* Update test/language/expressions/optional-chaining/optional-chain-async-square-brackets.js

Co-Authored-By: Leo Balter <leonardo.balter@gmail.com>

* Update test/language/expressions/optional-chaining/member-expression-async-this.js

Co-Authored-By: Leo Balter <leonardo.balter@gmail.com>

* Update test/language/expressions/optional-chaining/optional-chain-async-optional-chain-square-brackets.js

Co-Authored-By: Leo Balter <leonardo.balter@gmail.com>

* Update test/language/expressions/optional-chaining/optional-chain-async-optional-chain-square-brackets.js

Co-Authored-By: Leo Balter <leonardo.balter@gmail.com>

* Update test/language/expressions/optional-chaining/optional-chain-async-square-brackets.js

Co-Authored-By: Leo Balter <leonardo.balter@gmail.com>

* Update test/language/expressions/optional-chaining/optional-chain-async-square-brackets.js

Co-Authored-By: Leo Balter <leonardo.balter@gmail.com>

* Update test/language/expressions/optional-chaining/optional-chain-async-optional-chain-square-brackets.js

Co-Authored-By: Leo Balter <leonardo.balter@gmail.com>

* Update test/language/expressions/optional-chaining/member-expression-async-identifier.js

Co-Authored-By: Leo Balter <leonardo.balter@gmail.com>

* chore: update tests based on code review

* chore: address code review
2019-09-18 13:33:29 -03:00
Alexey Shvayka
256f5f4b46 Improve Proxy/set call parameters coverage (#2347)
* Tweak front matter of basic test

* Simplify basic test

* Add test for proxy as prototype

* Add test for proxy as prototype and __proto__
2019-09-18 13:30:28 -03:00
Alexey Shvayka
ff83fb2922 Improve "proto-from-ctor-realm" coverage for Array (#2340)
* Rename "Array/proto-from-ctor-realm.js" test

* Add single argument test

* Add two arguments test
2019-09-18 13:26:40 -03:00
Alexey Shvayka
4edbad060e Gracefully handle errors from ToString in harness/assert (#2343)
* Introduce `assert._toString`

* Use `assert._toString` in `assert`

* Use `assert._toString` in `assert.sameValue`

* Use `assert._toString` in `assert.notSameValue`
2019-09-18 13:25:38 -03:00
Alexey Shvayka
ef7fd2bc27 Add "proto-from-ctor-realm" tests for Intl constructors (#2334)
* Rename "Object/proto-from-ctor.js" test

* Add missing "Symbol" features

* Add Intl.Collator test

* Add Intl.DateTimeFormat test

* Add Intl.NumberFormat test

* Add Intl.PluralRules test
2019-09-11 17:22:21 -03:00
Alexey Shvayka
652cfc764a Add "proto-from-ctor-realm" tests for native errors (#2335)
* Add EvalError test

* Add RangeError test

* Add ReferenceError test

* Add SyntaxError test

* Add TypeError test

* Add URIError test
2019-09-11 17:19:58 -03:00
Alexey Shvayka
0893865705 Add async generator default prototype tests (#2336)
* Add default prototype test

* Add cross-realm default prototype test
2019-09-11 17:02:03 -03:00
Caio Lima
d65b9b35be Abrupt completion cases (#2321)
* Added abrupt completition into PrivateFieldSet and PrivateFieldGet

* Adding abrupt completition for computed property evaluation

* Added case to cover abrupt completition on field initializer

* Fixing typo for 'complition' word

* Fixing typo into setter and getter description

* Fixing broken test abrupt-completition-on-field-initializer.js

* Fixing NITs

* Fixing typo of completion
2019-09-05 17:15:05 -03:00
Leo Balter
d6d37f2f43 Remove tests based on the $262.gc hook
Fixes #2239
Closes #2329
2019-09-05 19:38:03 +01:00
Leo Balter
d39e96b439
Add missing features for tests using cross-realm (#2328)
Fixes #2324
2019-09-04 16:27:20 -03:00
Caio Lima
a997838e4b Adding missing variations to verify private method name setup (#2323)
* Added missing cases for name into variations of private method definition

* Generated tests

* Fixing broken case 'private-async-generator-method-name'
2019-09-04 11:43:25 -03:00
Leo Balter
0e30ee06c9
Merge pull request #2322 from caiolima/private-method-length
Added private method length cases
2019-09-04 11:42:19 -03:00
Leo Balter
5d84854f27
Avoid usage of Object.keys when asserting order of returned values (#2320)
Fixes #2226
2019-09-04 11:38:18 -03:00
Gus Caplan
841b32c6da fix TypedArray.prototype.sort test (#2326)
* fix TypedArray.prototype.sort test

* Update sorted-values.js

* Update sorted-values.js
2019-09-04 11:36:51 -03:00
Caio Lima
32958aeb56 Generated tests 2019-08-30 13:35:28 -03:00
Caio Lima
5848f4f39d Adding case to verify private methods length proeprty 2019-08-30 13:31:45 -03:00
Leo Balter
b63cdfd4f4
Fix a test for TLA (#2319)
Fixes #2300
2019-08-29 17:20:50 -03:00