Commit Graph

5361 Commits

Author SHA1 Message Date
Philip Chimento 9a0aa4c719 regexp-generator: Fix indentation
Our config files specify two-space indents for JS files. These scripts
were probably written before that was a thing. Update the indentation of
the script and the generated tests all in one go.
2024-11-11 17:26:56 -08:00
Philip Chimento 7e1f1e749d regexp-generator: Update ECMA-262 quote in header
While we're touching this we may as well update the quote from ECMA-262 to
match what it currently says.
2024-11-11 17:26:56 -08:00
Philip Chimento 031ed02ad1 regexp-generator: Update front matter
Add the `generated` flag, and update the link to the generator script.
2024-11-11 17:26:56 -08:00
Philip Chimento 07ddc3b41b regexp-generator: Implement downstream changes
The optimizations from commit e558b29b were never incorporated into the
upstream test generator. This does so now.

As far as I can tell, the changes to the Unicode ranges are purely
cosmetic. Some are formatted as 6-digit hex numbers instead of 4-digit.
Others move the low-surrogates range 0xDC00-0xDCFF to the beginning of the
array, but the union of the ranges is still the same.
2024-11-11 17:26:56 -08:00
Philip Chimento 80c49657d3 Temporal: Fix name of constructor
I mistakenly committed something slightly different in my code review
suggestion than what I had modified locally.
2024-11-08 11:18:43 +01:00
Tim Chevalier 1128b6fcd2 Temporal: Add test case for rounding up to a non-24-hour ZonedDateTime 2024-11-07 14:13:27 -08:00
Tim Chevalier 81df127d54
Temporal: Add test case for rounding Duration relative to a ZonedDateTime (#4306)
This is the test for the change in tc39/proposal-temporal#3036 and is a variation of the test from tc39/proposal-temporal#2814 .
2024-11-07 12:22:28 -08:00
André Bargull 26a396da14 Add test coverage for Date.prototype.toTemporalInstant 2024-11-07 11:45:32 +01:00
Ioanna M Dimitriou H 437f9a7631
Migrate staging tests for JSON-parse-with-source (#4265)
Co-authored-by: Philip Chimento <pchimento@igalia.com>
Co-authored-by: Ms2ger <Ms2ger@igalia.com>
2024-11-06 16:59:30 +01:00
Tim Chevalier b2809feedf
Temporal: Add test for Duration/p/toString() with total time units out of range (#4313) 2024-11-06 16:47:58 +01:00
Jordan Harband 38d52c9a60 `Error.isError`: fix remaining issues from #4304
Fixes #4304
2024-11-06 13:05:41 +01:00
Jordan Harband a2f43d68d4
Error.isError: Fix test bugs (#4308) 2024-11-05 11:17:39 -05:00
Tim Chevalier ab69bd4dd8
Temporal: Add test for date with offset transition (#4301)
Co-authored-by: Philip Chimento <philip.chimento@gmail.com>
2024-11-01 13:43:05 -07:00
Tim Chevalier 01eb47d4f2 Add tests for adding negative durations to/subtracting durations from the last representable year/month of the ISO calendar
See https://github.com/tc39/proposal-temporal/issues/3029
2024-11-01 12:57:28 -07:00
Tim Chevalier 45f352d37b
Temporal: Add test for setting minimum valid year-month with non-ISO8601 calendar (#2998) (#4300) 2024-11-01 11:14:22 -07:00
Tim Chevalier b7822bb0b8
Temporal: Move tests for ZonedDateTime/p/{since, until} out of staging (#4293)
Co-authored-by: Philip Chimento <philip.chimento@gmail.com>
2024-11-01 11:02:32 -07:00
Tim Chevalier ccf8977b1c Temporal: Split up ZonedDateTime/old/string-parsing.js and move out of staging 2024-10-31 16:05:30 -07:00
Tim Chevalier 8cc0560713
Temporal: Move all tests out of ZonedDateTime/old/with.js under staging into separate files under test/built-ins (#4297)
Co-authored-by: Philip Chimento <philip.chimento@gmail.com>
2024-10-31 13:34:57 -07:00
Tim Chevalier 0f6b269400 Temporal: Move ZonedDateTime order-of-operations tests out of staging 2024-10-31 13:13:20 -07:00
Tim Chevalier bf46ed66b6 Temporal: move tests for ZonedDateTime/p/{toInstant, toPlainDate, toPlainTime, toString} 2024-10-31 13:08:38 -07:00
Tim Chevalier 7a4426e2b2 Temporal: Move remaining tests from Temporal/ZonedDateTime/old under staging into separate files under test/built-ins
Includes withPlainDateTime and withTimeZone
2024-10-31 11:58:25 -07:00
Ben Allen 38d2924fb6
402: Replace currency-digits.js Intl.NumberFormat test (#4285)
ISO 4217 no longer normative for currency minor digits. New test verifies that
currency data (from whatever source) is used by verifying that `maximumFractionDigits` and `minimumFractionDigits`
are identical. See https://github.com/tc39/ecma402/pull/922
2024-10-31 11:39:44 -07:00
Tim Chevalier de68177f59 Temporal: Move ZonedDateTime/prototype/round tests and one other ZonedDateTime test out of staging 2024-10-30 17:58:43 -07:00
Tim Chevalier 70ef1acd1c Fix test for required properties 2024-10-30 17:18:26 -07:00
Tim Chevalier 7fb465496f Feedback from code review 2024-10-30 17:18:26 -07:00
Tim Chevalier d2d84950c3 Update test/built-ins/Temporal/ZonedDateTime/from/argument-propertybag-invalid-offset-string.js
Co-authored-by: Philip Chimento <philip.chimento@gmail.com>
2024-10-30 17:18:26 -07:00
Tim Chevalier a93fe76f52 Temporal: Move ZonedDateTime property bag tests out of staging 2024-10-30 17:18:26 -07:00
Tim Chevalier 87344d96f2 Feedback from code review 2024-10-30 17:03:46 -07:00
Tim Chevalier bfb957f669 Temporal: Move more ZonedDateTime tests out of staging 2024-10-30 17:03:46 -07:00
Tim Chevalier 5505758111
Temporal: Fix Temporal/Duration/p/round tests (#4299) 2024-10-30 16:45:28 -07:00
Tim Chevalier 85934bf49c
Temporal: Move tests for ZonedDateTime/p/{add, subtract} out of staging into test/built-ins (#4287) 2024-10-30 16:20:09 -07:00
Ben Allen febf246e05 DurationFormat: Add tests for durations with large hour/minute/second unit values while using digital style
Grouping separators suppressed in this situation. See tc39/proposal-intl-duration-format/pull/198
2024-10-30 16:07:46 -07:00
Tim Chevalier 01dbd4db41 Temporal: Move tests for ZonedDateTime/compare out of staging into test/built-ins 2024-10-30 15:58:23 -07:00
Ben Allen 455cfa5a66
Add tests to `Intl.DateTimeFormat` and `Intl.RelativeTimeFormat` for various numbering systems (#4276)
* Add tests to `Intl.DateTimeFormat` and `Intl.RelativeTimeFormat` for formatting in various numbering systems

* fixup! Add tests to `Intl.DateTimeFormat` and `Intl.RelativeTimeFormat` for formatting in various numbering systems
2024-10-30 15:03:44 -07:00
Ben Allen 153db6ce33 Intl.NumberFormat Add tests for `Intl.NumberFormat` when using "currency" style and "compact", "engineering", and "scientific" notations.
Related PR: https://github.com/tc39/ecma402/pull/925
2024-10-30 14:51:34 -07:00
Tim Chevalier 3f2486e37f
Move all tests from staging/Temporal/Instant/old to test/built-ins/Temporal/Instant (#4282)
* Temporal: Move all tests from staging/Temporal/Instant/old to test/built-ins/Temporal/instant
2024-10-30 14:29:02 -07:00
Tim Chevalier f178db57fe
Temporal: Move all tests out of total.js under staging into separate files under test/built-ins (#4281)
* Temporal: Move most tests out of total.js under staging into separate files under test/built-ins

Co-authored-by: Philip Chimento <philip.chimento@gmail.com>
2024-10-30 11:44:59 -07:00
Tim Chevalier 713ddf66e0
Temporal: Move some tests out of round.js under staging into separate files under test/built-ins (#4280)
Co-authored-by: Philip Chimento <philip.chimento@gmail.com>
2024-10-30 11:32:37 -07:00
Théo LUDWIG 01776c30d3 test(top-level-await): move out of staging module graphs hanging 2024-10-29 19:35:56 +01:00
André Bargull 5b1757743a Update expected formatting for CLDR 46 2024-10-29 12:10:47 +01:00
Tim Chevalier b8c29a05b5 Temporal: Move tests out of staging/Temporal/Duration/old and into test/built-ins 2024-10-28 12:41:47 -07:00
Chengzhong Wu 3f0a24f4f6 [source-phase-imports] update missing source error type 2024-10-25 11:37:04 +02:00
_Kerman 0add42b556
fix: heritage-arrow-function.js (#4273) 2024-10-21 15:54:30 +02:00
Jordan Harband 0645461999 add missing Error.isError feature flag
See https://github.com/tc39/test262/pull/4266#issuecomment-2419000590
2024-10-17 10:57:45 -07:00
Jordan Harband 4b17ad3f3d add `Error.isError` tests
See https://github.com/tc39/proposal-is-error/issues/7
2024-10-15 11:12:39 -07:00
Ioanna M. Dimitriou H 3cacf7d85e Fix CI linting errors 2024-10-15 10:32:14 -07:00
Ioanna M. Dimitriou H 51d86807fe Address review comments 2024-10-15 10:32:14 -07:00
Ioanna M. Dimitriou H 3f8d416bf5 same for isRawJSON's property descriptor test file 2024-10-15 10:32:14 -07:00
Ioanna M. Dimitriou H d103a39e52 Updated placement of tests in rawJSON test files, previous older version was added accidentally. 2024-10-15 10:32:14 -07:00
Ioanna M. Dimitriou H 954d1809f8 Boilerplate tests for rawJSON and isRawJSON
from the proposal json-parse-with-source
2024-10-15 10:32:14 -07:00
André Bargull df910721ba Update time zone mapping for CLDR46 / tzdata 2024b 2024-10-14 11:21:25 -07:00
André Bargull 9b3d9d9700 Update built-ins/Date to verifyProperty 2024-10-14 08:55:14 -07:00
André Bargull d1c2a6f139 Update built-ins/Date/prototype/getXXX to verifyProperty 2024-10-14 08:55:14 -07:00
André Bargull 800d2190b3 Update built-ins/Date/prototype/setXXX to verifyProperty 2024-10-14 08:55:14 -07:00
Meghan Denny 60963bf468
chore: convert many tests to use verifyProperty (#4263)
Co-authored-by: André Bargull <andre.bargull@gmail.com>
2024-10-14 11:25:05 +02:00
Peter Hoddie 83fae7f1f2 a few tests use verifyPrimordialProperty 2024-10-11 12:45:30 -07:00
André Bargull 92b592547d Ensure NaN time values are correctly handled in various Date setters
Related PR: https://github.com/tc39/ecma262/pull/2136
2024-10-11 12:19:13 -07:00
Richard Gibson 5ae7de9942
Increase coverage of String.prototype.replace $xy replacement patterns (#3931)
* $xy is a valid capture index
* $xy is not a valid capture index but $x is
* neither $xy nor $x is a valid capture index
2024-10-10 14:08:45 +02:00
tannal 954d6370f9 Avoid using destructuring in tco-fn-realm.js 2024-10-09 19:52:05 -07:00
André Bargull ab809f8f0c Update tests for "Limit valid values for DurationFormats to match upcoming limits in Temporal"
Update tests for
<https://github.com/tc39/proposal-intl-duration-format/pull/173>.
2024-10-09 19:43:12 -07:00
Chengzhong Wu 0596ff6981 [source-phase-imports] Dynamic import source call
Add source phase import support in import calls with necessary
embedder APIs. When a imported module does not support source phase
representation, a ReferenceError is thrown in d8.

Bug: 42204365
Change-Id: If40cadfcdf0a547f24d20c67149bba559480341d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5878343
Commit-Queue: Chengzhong Wu (legendecas) <legendecas@gmail.com>
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Cr-Commit-Position: refs/heads/main@{#96473}
2024-10-09 08:18:20 +02:00
Rezvan Mahdavi Hezaveh 6c967a8bbb Remove extra `.js` from file name 2024-10-07 10:58:18 -07:00
Philip Chimento e2f2f92486 Temporal: Add tests for formatting with no overlap between DTF options and Temporal object
See tc39/proposal-temporal#2795. When attempting to format a Temporal
object, if the DateTimeFormat has options that do not overlap with the
data model of the Temporal object, toLocaleString() and format() are
supposed to throw a TypeError.
2024-10-07 12:02:45 +02:00
Philip Chimento eb848bb553 Temporal: Remove incorrect toLocaleString tests
These staging tests are incorrect. See tc39/proposal-temporal#2795. This
was an unintended behaviour. It differed from the behaviour for dateStyle
and timeStyle, which was the intended behaviour.
2024-10-07 12:02:45 +02:00
Philip Chimento 573234fe7b Temporal: Add tests for toLocaleString with no options
For each Temporal object, add tests for what components are present by
default if no options for date or time components are passed.
2024-10-07 12:02:45 +02:00
Philip Chimento 9e6ab9bb02 Temporal: Add coverage for formatting each Temporal object with only one component
Adds a test for each Temporal object's toLocaleString() method, formatting
them with only one option e.g. { year: 'numeric' } and comparing it with
the corresponding output for legacy Date.

See tc39/proposal-temporal#2796.
2024-10-07 12:02:45 +02:00
Philip Chimento 459cef7185 Temporal: Add coverage for validating offset string syntax vs suitability
Syntax is validated first. Only after the property bag is fully converted
into a Calendar Fields Record does the time zone validate whether the UTC
offset is correct for that exact time in the time zone.

See tc39/proposal-temporal#2962
2024-10-07 12:02:45 +02:00
Philip Chimento 6dced5dead Temporal: Add coverage for validating month code syntax vs suitability
Syntax is validated first. Only after the property bag is fully converted
into a Calendar Fields Record does the calendar validate whether the month
code actually exists in the year.

See tc39/proposal-temporal#2962
2024-10-07 12:02:45 +02:00
Philip Chimento 09c7d33253 Temporal: Add coverage for disallowed seconds in offset time zone identifiers
This was an area missing test coverage.
2024-10-07 12:02:45 +02:00
Ioanna M Dimitriou H 1332b14d69
Merge branch 'main' into regex-v-flag-follow-up 2024-10-04 18:33:01 +02:00
tannal d7d02aedca fix errors 2024-10-04 14:13:23 +08:00
Rezvan Mahdavi Hezaveh 06ea308d14 Remove one of the `.js`s from the test name 2024-10-03 16:41:38 -07:00
Philip Chimento f4a987fe3c Temporal: Additional tests for cases where date addition goes out of range
See tc39/proposal-temporal#2985
2024-10-03 12:14:41 +02:00
Philip Chimento 326cdb8da8 Temporal: Consistently test all string entry points for representable range
Remove the existing "instant-string-limits.js" that only applied to APIs
where ToTemporalInstant was called. Add "argument-string-limits.js" tests
everywhere ISO strings are converted.

Related to tc39/proposal-temporal#2985
2024-10-03 12:14:41 +02:00
Philip Chimento 116bc2cc47 Temporal: Move UTC offset ±24:00 into invalid string tests
It was in the "limits of representable range" tests, but it is invalid
syntax, so it belongs somewhere else.
2024-10-03 12:14:41 +02:00
Richard Gibson 585d7ac2b3 Test TypedArrays with excess bytes in their underlying buffers 2024-10-02 16:38:41 -07:00
tannal 5c20b3bd85 Add basic tests with u flag in v flag tests. 2024-09-28 18:12:21 +08:00
Huáng Jùnliàng 1a0aa3b866 fix: syntax error in DisposableStack test 2024-09-27 15:29:36 +02:00
Linus Groh f1a670ff59 Fix compareArray.js harness tests
Also a typo in one of the messages.
2024-09-27 11:43:57 +02:00
Philip Chimento f225229f85 Remove FinalizationRegistry tests that depend on nondeterministic GC
In these tests, cleanupSome() would have optionally emptied the
FinalizationRegistry synchronously and called the finalization callbacks.
Without cleanupSome(), there is no way to observe a FinalizationRegistry
being emptied using "pure" ECMAScript: FinalizationRegistry doesn't get
cleaned up until the microtask queue is empty, and without external APIs
such as setTimeout() there is no way to pause execution until after the
microtask queue is empty.

Non-deterministic tests are not that useful anyway; these tests are
probably better left to implementations' internal testing strategies.
2024-09-25 10:06:15 -07:00
Philip Chimento 77b1c787e8 Remove WeakRef/prototype/deref/gc-cleanup-not-prevented-with-wr-deref.js
On all engines that still support cleanupSome, this test was hitting the
asyncGC.notCollected check in resolveAsyncGC(). That means that it was
just skipped, and the deref() part was never actually executed.

Given that it is not testing anything in practice, remove it.
2024-09-25 10:06:15 -07:00
Philip Chimento 3bed2c446f Remove tests for FinalizationRegistry.prototype.cleanupSome
This proposal was split off from FinalizationRegistry at stage 2, and then
withdrawn. Given that status, it should not be part of the test suite.
2024-09-25 10:06:15 -07:00
SkyCrystal 957ab22773
Add a test for Generator (#3729) 2024-09-25 12:58:24 -04:00
Ioanna M Dimitriou H c63d53ad9c
Builtin boilerplate tests from PR #3866 (#4236)
Includes some proto-from-ctor-realm.js tests that look like standard tests for prototypes.

Co-authored-by: Ron Buckton <ron.buckton@microsoft.com>
Co-authored-by: Philip Chimento <philip.chimento@gmail.com>
2024-09-24 14:04:28 +02:00
Shu-yu Guo fcfb11da77 Remove test for old behavior for Atomics.pause 2024-09-20 15:34:26 -07:00
tannal 474af83250 Add more tests for v flag 2024-09-20 11:10:54 -07:00
Ron Buckton dc7a22dd28 Function branding boilerplate tests from PR #3866 2024-09-20 10:48:23 -07:00
Philip Chimento e46b317b18 Temporal: Add test coverage for canonicalizing era codes in from()
There was a coverage gap for converting calendar fields to a date when the
provided era was an alias.

See https://github.com/tc39/proposal-temporal/pull/2940#discussion_r1767508659
2024-09-20 17:04:19 +02:00
André Bargull 18ae34d8f2 Improve coverage for reference type in various contexts
Missing coverage encountered while implementing
<https://github.com/tc39/ecma262/pull/3307> in SpiderMonkey.

Ensure environment lookups are performed in the correct order:
- keyed-destructuring-property-reference-target-evaluation-order-with-bindings.js

Ensure `delete super[elem]` steps are correctly performed:
- delete/super-property-topropertykey.js
- delete/super-property-uninitialized-this.js

Ensure ToPropertyKey for computed property names in object literals
correctly performed:
- object/computed-property-name-topropertykey-before-value-evaluation.js

Ensure `GetSuperBase` is executed before `ToPropertKey`:
- super/prop-expr-getsuperbase-before-topropertykey-*

Ensure `GetThisBinding` is executed first:
- super/prop-expr-uninitialized-this-*
2024-09-20 16:00:53 +02:00
Richard Gibson de3a117f02 Temporal: Update tests to account for use of year in ToTemporalMonthDay
Ref https://github.com/tc39/proposal-temporal/issues/2863
Normative PR: https://github.com/tc39/proposal-temporal/pull/2940
2024-09-19 11:27:48 -07:00
Rezvan Mahdavi Hezaveh dfece8cfc5 [explicit-resource-management] Add test for async generator body
This cl adds a test for having `await using` in the async
generator function body.

Bug: 42203814
Change-Id: I30c0d2fe354a3047f67a4a71f7c6472c3d832bbf
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5867651
Commit-Queue: Rezvan Mahdavi Hezaveh <rezvan@chromium.org>
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Cr-Commit-Position: refs/heads/main@{#96146}
2024-09-17 22:20:04 +02:00
André Bargull 867ca540d6 Add test coverage for correct binding object MOP executions in with-environment 2024-09-13 12:28:45 -07:00
SUZUKI Sosuke 8cbcc309e6
Add tests for `%WrapForValidIteratorPrototype%.return()` from Iterator Helpers Proposal (#4214)
* Add tests for `%WrapForValidIteratorPrototype%.return()`

* Address review

- Remove unused `flags
- Do not use `deepEqual.js`
- Assert `return` never got when `this` value is invalid
- Use `TemporalHelpers` to observer get / call
2024-09-13 11:41:43 -07:00
Mathias Bynens 77e98fb683 Add tests for Unicode v16 property escapes
Issue: https://github.com/tc39/ecma262/issues/3425
2024-09-13 14:42:42 +02:00
Mathias Bynens 83c58c5055 Move updated `unicodeSets` tests to their appropriate location 2024-09-13 14:38:51 +02:00
Mathias Bynens 4bdf978220 Add tests for Unicode v16 Identifier{Start,Part}
Issue: https://github.com/tc39/ecma262/issues/3425

.
2024-09-12 08:48:21 -07:00
Shu-yu Guo a9c1c08852
Migrate resizable buffer tests out of staging (#3888)
Co-authored-by: Ioanna M Dimitriou H <idimitriou@igalia.com>
2024-09-12 11:26:33 +02:00
Paul Bakker 98c7e9114e
Test computed accessor properties and AggregateError constructor without arguments (#4222) 2024-09-11 11:41:07 +02:00
Philip Chimento 70cdc562e3 Temporal: Adjust era code of Japanese pre-Meiji era
As of the current state of the Intl Era and Month Codes proposal,
https://tc39.es/proposal-intl-era-monthcode/#sec-temporal-canonicalizeeraincalendar
the canonical name of this era is "japanese".

See: https://github.com/tc39/proposal-temporal/issues/2901
2024-09-10 09:28:24 -07:00
Philip Chimento 6f8f6b5261 Temporal: Tests for ignoring era and eraYear in calendars without eras
This tests some of the prose requirements of CalendarResolveFields.

See https://github.com/tc39/proposal-temporal/issues/2870
2024-09-10 09:28:24 -07:00