Commit Graph

1193 Commits

Author SHA1 Message Date
Gus Caplan 2aacb28bb9 Fix some proxy tests (#1966)
- `Proxy/getOwnPropertyDescriptor/call-parameters.js`
  Fixes a call to `Object.getOwnPropertyDescriptor` without the prop
  param. Not actually a huge problem, as the test wasn't depending on
  it.

- `Proxy/getOwnPropertyDescriptor/result-type-is-not-object-nor-undefined`
  This test asserted that `function() {}` should throw with the
  following spec step, which is incorrect, as functions are typed as
  `Object` in the spec.
  """
  1. If Type(trapResultObj) is neither Object nor Undefined, throw a
    TypeError exception.
  """
2018-11-26 13:41:13 -05:00
Rick Waldron e91645c812 Atomics: (bigint) initialize BigInt64Array before calling $262.agent.start(string-of-program-code) 2018-11-20 15:57:39 -05:00
Rick Waldron 8793bf5d57 Atomics: fix running index in notify-with-no-matching-agents-waiting.js
Migrating all tests to this API is necessary to prevent tests from hanging indefinitely when a SAB is sent to a worker but the code in the worker attempts to create a non-sharable TypedArray (something that is not Int32Array or BigInt64Array). When that scenario occurs, an exception is thrown and the agent worker can no longer communicate with any other threads that control the SAB. If the main thread happens to be spinning in the $262.agent.waitUntil() while loop, it will never meet its termination condition and the test will hang indefinitely.

Because we've defined $262.agent.broadcast(SAB) in https://github.com/tc39/test262/blob/master/INTERPRETING.md, there are host implementations that assume compatibility, which must be maintained.
2018-11-20 15:18:14 -05:00
Rick Waldron e4883091b9 Introduce $262.agent.safeBroadcast and migrate Atomics tests.
Migrating all tests to this API is necessary to prevent tests from hanging indefinitely when a SAB is sent to a worker but the code in the worker attempts to create a non-sharable TypedArray (something that is not Int32Array or BigInt64Array). When that scenario occurs, an exception is thrown and the agent worker can no longer communicate with any other threads that control the SAB. If the main thread happens to be spinning in the $262.agent.waitUntil() while loop, it will never meet its termination condition and the test will hang indefinitely.

Because we've defined $262.agent.broadcast(SAB) in https://github.com/tc39/test262/blob/master/INTERPRETING.md, there are host implementations that assume compatibility, which must be maintained.
2018-11-20 15:17:47 -05:00
Leo Balter dec4e5df74
Merge pull request #1801 from mathiasbynens/issue-1634
Move `throw "…"` for negative parsing errors to a helper function
2018-11-13 17:23:09 -05:00
Kevin Gibbons 8ed9947df1 add async-iteration flag (#1942) 2018-11-08 15:32:40 -05:00
Rick Waldron 87202773fd
Merge pull request #1938 from adrianheine/promise
Add missing mandatory Promise.{all,race} argument
2018-11-08 09:32:25 -05:00
Rick Waldron b1e15cd326
Merge pull request #1923 from bakkot/less-regex-eval
Reduce uses of `eval` for regex literal syntax
2018-11-08 09:18:48 -05:00
Adrian Heine fc6de76a0d Add missing mandatory Promise.{all,race} argument 2018-11-08 09:37:56 +01:00
Adrian Heine né Lang 0475c127c4 Fix some generators feature flags (#1933) 2018-11-07 17:51:23 -05:00
Kevin Gibbons 0160cab518 fix missing/duplicate tests 2018-11-07 13:52:44 -08:00
Mathias Bynens e558b29b69
Optimize character class escape tests
Previously, these tests simply compared against an equivalent regular expression pattern by generating a large string containing either all code points up to U+FFFF or U+10FFFF, depending on the `u` flag, and then performing:

    str.replace(re, '') === str.replace(otherRe, '');

These two `String#replace` calls can be optimized into a single `RegExp#test` call by following the pattern used in the property escapes tests at https://github.com/mathiasbynens/unicode-property-escapes-tests.
2018-11-06 16:14:14 -08:00
Mathias Bynens 01550ab13a
Sync with https://github.com/bocoup/test262-regexp-generator/pull/1 2018-11-06 15:24:07 -08:00
Kevin Gibbons e80d8a184a split unicode-property-names.js 2018-11-05 15:34:03 -08:00
Kevin Gibbons 9bc9116656 split unicode-malformed.js 2018-11-05 15:23:03 -08:00
Kevin Gibbons 296f47a008 split non-unicode-property-names.js 2018-11-05 15:12:23 -08:00
Kevin Gibbons de339e98d6 split non-unicode-malformed.js 2018-11-05 14:58:03 -08:00
Richard Gibson 5b3d429e28 Move cross-realm tests into their own files 2018-11-02 14:39:23 -04:00
Richard Gibson 6da621f161 Assert error when invoking any %RegExpPrototype%-aware getter on cross-realm RegExp.prototype 2018-11-02 14:39:23 -04:00
Richard Gibson 9e0410814a Test cross-realm use of RegExp source getter in both directions 2018-11-02 14:39:23 -04:00
Richard Gibson 823af01575 Assert error when invoking RegExp source getter on cross-realm RegExp.prototype
RegExp.prototype is not a RegExp, and the algorithm only special-cases
(same-realm) %RegExpPrototype%.
2018-11-02 14:39:23 -04:00
Rick Waldron f1e362d558 Fix typos; generate tests (#1907) 2018-10-26 17:11:05 -04:00
Mathias Bynens b9daa57dcb Rename to $DONOTEVALUATE per @leobalter's suggestion 2018-10-23 13:51:17 +02:00
Mathias Bynens e3feffb01e Move `throw "…"` for negative parsing errors to a helper function
Closes #1634.
2018-10-23 13:51:16 +02:00
André Bargull faed4fb089 Fix various test issues 2018-10-17 07:45:33 -07:00
Richard Gibson e064fcd7ce Remove redundant JSON test 2018-10-03 11:06:32 -04:00
Richard Gibson 58e308753c Fix grammar in JSON.stringify tests 2018-10-03 11:06:32 -04:00
Richard Gibson d961fcc905 Add feature for well-formed-stringify tests 2018-10-03 11:06:32 -04:00
Richard Gibson ce967f7a86 Add tests for proposal-well-formed-stringify
* unpaired surrogate escape sequences
2018-10-03 11:06:32 -04:00
Richard Gibson 783fc5d8bb Remove redundant test 2018-10-03 11:06:32 -04:00
Richard Gibson d6e83453b2 Simplify and improve control character escaping tests 2018-10-03 11:06:32 -04:00
Richard Gibson 61fdc701fa Remove duplicate test 2018-10-03 11:06:32 -04:00
Richard Gibson 950d58a7ca Improve test description grammar 2018-10-03 11:06:32 -04:00
Leo Balter d544eacedf
assert calls order for Symbol.match on matchAll usage (#1795)
Fix #1794
2018-09-26 11:37:19 -04:00
André Bargull 3febd4c536 Update matchAll tests to reflect latest spec proposal 2018-09-26 10:38:35 -04:00
Kevin Gibbons 89ec038cf2 remove some trailing commas in calls 2018-09-21 10:04:33 -04:00
Kevin Gibbons 92a96f068e Remove bigint feature flag for built-ins/Atomics/wait/was-woken-before-timeout.js 2018-09-19 10:58:34 -04:00
Kevin Gibbons 05cbb5f8ae Fix feature flag in TypedArrayConstructors/Float32Array/length.js 2018-09-19 10:58:34 -04:00
Leo Balter 3166523832 Add basic coverage for Symbol.asyncIterator 2018-09-17 10:50:33 -04:00
Andrew McCreight c278f59416
Fix typo in test message 2018-09-14 12:05:16 -07:00
Leo Balter 93635ca3b2 Assert extensibility of dataview objects 2018-09-10 11:13:11 -04:00
Ashley Hauck 835c85c26e TypedArray.prototype.sort: check result of compareFn is immediately converted ToNumber (#1694) 2018-08-27 14:27:27 -04:00
Leo Balter 1307fa8f44 some quick fixes for Array.prototype.{flat,flatMap} tests 2018-08-20 11:16:54 -04:00
Leo Balter d263e2ccc9
Merge pull request #1686 from rhuanjl/proxyFlat
Array.prototype.{flat,flatMap} property access count
2018-08-20 10:44:16 -04:00
rhuanjl 1bffb14efb Array.prototype.flat and Array.prototype.flatMap property access count 2018-08-20 06:31:04 +01:00
André Bargull d7d154b3bc Remove requirement that ToNumber(value) completes in less than $262.agent.MAX_TIME_EPSILON
$262.agent.MAX_TIME_EPSILON was intended to be used for callers like `Atomics.wait(typedArray, indexNumber, valueNumber, timeoutNumber)` where all parameters with the `Number` suffix denote values which are already Number values. It should not be used for `Atomics.wait(typedArray, indexObject, valueObject, timeoutObject)` where all parameters with the `Object` suffix denote values which are Object values, because in that case we'd require that `ToNumber(objectValue)` (potentially invoked multiple times) completes in less than 100 milliseconds (the default value for MAX_TIME_EPSILON).

Also removes $262.agent.MAX_TIME_EPSILON because it is now no longer used.
2018-08-19 10:29:29 -04:00
Leo Balter ab436c4651
Merge pull request #1677 from tc39/ofe-use-verifyproperty
Object.fromEntries: use verifyProperty; add specification details
2018-08-17 18:06:19 -04:00
André Bargull 0aa1f70c14 Fix typo: nofity -> notify 2018-08-17 07:48:44 -07:00
André Bargull 8879820a8f Make RegExp/CharacterClassEscapes tests faster across all engines 2018-08-17 07:48:42 -07:00
Rick Waldron ff475fce11 Object.fromEntries: use verifyProperty; add specification details 2018-08-13 15:15:02 -04:00