Commit Graph

6819 Commits

Author SHA1 Message Date
Nicolò Ribaudo dad2774b2e
Add missing `from` in two `import defer` tests (#4338) 2024-12-07 12:42:54 +01:00
Philip Chimento eefc5cf367 Temporal: Improve coverage of relativeto-string-limits tests
These tests did not fully cover Temporal.Duration.prototype.round and
Temporal.Duration.prototype.total because they called those methods on a
blank duration (all components zero), for which there is an early return
in round() and total().

This meant that we missed an assertion that would be hit after the early
return.

This makes sure to test both blank and non-blank Durations with these
relativeTo strings, and expect some strings to fail at different steps
with the two cases.

See: tc39/proposal-temporal#3015
2024-12-05 15:02:50 +01:00
Boshen 42d83277b7
Fix `single-line-html-close-first-line-*` failing with `Test262Error is not defined` (#4333)
Fix `single-line-html-close-first-line-*` failing with `Test262Error is not defined`

closes #4020
2024-12-04 11:55:40 -08:00
André Bargull d124e1486c Allow alternative era for Chinese calendar
Year 1 in the Chinese calendar corresponds to 2637 BCE in ICU4X.

See <https://docs.rs/icu/latest/icu/calendar/chinese/struct.Chinese.html#year-and-era-codes>.
2024-12-04 11:26:13 -08:00
Shu-yu Guo dacf5ff845 Update Object.freeze tests for resizable TypedArrays
Object.freeze will always throw on variable-length TAs with this
has-consensus PR: https://github.com/tc39/ecma262/pull/3453
2024-12-03 17:47:38 -08:00
Tim Chevalier 901dd6e920
Temporal: Add test for balancing up to weeks when year/month are present (#4305)
See tc39/proposal-temporal#2813
2024-12-03 14:08:20 -08:00
Ben Allen 4053ff2eaf
Add tests for `Intl.PluralRules.prototype.resolvedOptions().pluralCategories` order (#4275)
Array elements should appear in following order: "zero", "one", "two", "few", "many", "other"

see https://github.com/tc39/ecma402/pull/918/
2024-12-03 13:38:58 +00:00
Nicolò Ribaudo 10c2615aa5
Add partial tests for `import defer` (#4278)
Co-authored-by: Asumu Takikawa <asumu@igalia.com>
2024-12-02 10:32:38 +01:00
graphemecluster 80d32d1a47
Add additional test cases for RegExp modifiers (#4321) 2024-11-28 13:37:02 +00:00
Chengzhong Wu 3499f1e646 Fix AbstractModuleSource.prototype descriptor 2024-11-26 15:09:30 +01:00
André Bargull fd979d85d4 Fix strict mode error 2024-11-19 17:02:40 +01:00
Ben Allen bf9f54cb9d
Test that Intl.DateTimeFormat canonicalizes the timezones "Etc/GMT", "Etc/UTC", and "GMT" to "UTC" (#4328) 2024-11-18 09:20:01 +00:00
Shu-yu Guo 05c45a4c43 [rab/gsab] Return false in [[PreventExtensions]] for variable-length TAs
This is a spec normative change: https://github.com/tc39/ecma262/pull/3453

Fixed: 374310073
Change-Id: I085260fea077bc27cf1e4f06d4389519e12c4e14
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6014979
Commit-Queue: Shu-yu Guo <syg@chromium.org>
Auto-Submit: Shu-yu Guo <syg@chromium.org>
Commit-Queue: Rezvan Mahdavi Hezaveh <rezvan@chromium.org>
Reviewed-by: Rezvan Mahdavi Hezaveh <rezvan@chromium.org>
Cr-Commit-Position: refs/heads/main@{#97166}
2024-11-13 22:22:11 +01:00
rmg-x 8eee4552a7 Fix the not-a-constructor test for Math.f16round()
Previously, this was using Math.fround() instead of the f16 version.
2024-11-12 15:36:48 +01:00
Philip Chimento 5c8a66d34b Update indentation in editorconfig
We have .mjs files now in the regexp-generator tool. Extend the same
indentation from .js files to cover them as well.
2024-11-11 17:26:56 -08:00
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 3aec6e3729 regexp-generator: Make package private
As per the package.json docs, these are optional if the package is not
being published.
2024-11-11 17:26:56 -08:00
Philip Chimento 684aec777f regexp-generator: Include these generated tests in make.py
This is necessary so that updates to the tests without corresponding
updates to the generator script will be flagged in CI runs.
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 54e02bdd56 regexp-generator: Remove dead code
These are unused parameters and variables, and all have no effect on the
output.
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 879326855b regexp-generator: Use ES modules, update dependencies
This code hasn't been touched in a while, so it's probably good to bring
in the newest versions of the dependencies. We can easily tell if there
was any incompatible effect on the output.

The latest version of filenamify requires using ES modules. We also have
to adapt to a breaking change in regexpu-core (see
https://github.com/mathiasbynens/regexpu-core/pull/49).

Also convert the dependencies to devDependencies, since this tool is not
necessary for executing test262.
2024-11-11 17:26:56 -08:00
Philip Chimento 754ecf1ad3 regexp-generator: Expand README
Add some minimal instructions for regenerating the tests.
2024-11-11 17:26:56 -08:00
Philip Chimento a65ca0e6a3 regexp-generator: Add 'npm run clean' script 2024-11-11 17:26:56 -08:00
Philip Chimento e8342c37d5 regexp-generator: Ensure folder exists before generating 2024-11-11 17:26:56 -08:00
Philip Chimento c8c800c845 regexp-generator: Update output path
Instead of an output/ folder, output the tests directly into the folder
where they live.
2024-11-11 17:26:56 -08:00
Philip Chimento 99be4228ef Add files from bocoup/test262-regexp-generator
Old upstream: https://github.com/bocoup/test262-regexp-generator
2024-11-11 17:26:56 -08:00
Philip Chimento 24e46d9bc9 Combine push and PR actions
This reduces duplication, with the tradeoff of having some steps in the
linter job that are mutually exclusive depending on the job trigger.
2024-11-11 16:48:38 -08:00
Philip Chimento 5be2025369 Use changed-files action in ESMeta job as well
Since we are using it in the other jobs, we may as well use it here. As a
bonus, it will make the job work even if the target of the pull request
isn't the main branch.
2024-11-11 16:48:38 -08:00
Philip Chimento 7f4aa49ccd Test tools only if they were modified
Most of the time, we are not committing changes to the tools. Move the
unit tests for the lint and generation tools to a separate PR workflow,
that is only run if anything in the tools/ folder is modified in the PR.

This saves time in the normal case.
2024-11-11 16:48:38 -08:00
Philip Chimento b292eb95c3 Remove ci_build.sh
After the previous commit, it doesn't do much. Just write its contents
directly in the workflow step.
2024-11-11 16:48:38 -08:00
Philip Chimento c73968aaaf Migrate test generation workflow to GitHub Actions
This runs faster and allows for future improvements.

Similar to the linter workflow, we remove the Circle-CI-specific stuff
from the file in tools/scripts/, and into .github/workflows/.

We use another external action (tj-actions/verify-changed-files) to check
that generating the tests didn't create any new changes. This is basically
a companion action to the tj-actions/changed-files used in the linter job.
2024-11-11 16:48:38 -08:00
Philip Chimento 15b7a780b3 Add annotations in the PR for linter errors
This should help contributors notice and fix linter errors when they
occur. Apparently it's as easy as printing a magic string to stdout, who
knew!

The lint tool doesn't give line numbers so we place the annotations at
line 1 for the time being.
2024-11-11 16:48:38 -08:00
Philip Chimento 0df1565532 Remove ci_lint.sh
After the previous commit, it doesn't do much, only passes the linting
exceptions file on the command line. Instead, make the lint.exceptions
file the default for that argument (if it exists), and remove the shell
script.
2024-11-11 16:48:38 -08:00
Philip Chimento 7fc86bca6a Migrate linter workflow to GitHub Actions
This runs faster and allows for future improvements.

I'm following a general principle of keeping code that isn't portable
between CI providers inside the config file for the CI provider. So in
this case we remove the Circle-CI-specific stuff from the file in
tools/scripts/, and into .github/workflows/. We use an external action
(tj-actions/changed-files) to gather the list of files to lint.
2024-11-11 16:48:38 -08:00
Philip Chimento 6b38428da1 Remove obsolete deploy scripts
We do not use these anymore. Generated tests are included in PRs and not
deployed separately. The deploy key encryption relies on TravisCI which we
don't use anymore, anyway.
2024-11-11 16:48:38 -08:00
Philip Chimento 71f7cfab83 Update indentation in editorconfig
Applying only to .travis.yml seems to be a relic from when that was the
only YAML file in the repo. Extend it to all YAML files.
2024-11-11 16:48:38 -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
André Bargull e7024c1761 Disable grouping for numeric units in Intl.DurationFormat 2024-11-07 14:19:18 -08: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