Skip to content

[Origin API] Add more test coverage for opaque origin comparison

5f23986
Select commit
Loading
Failed to load commit list.
Merged

[Origin API] Add more test coverage for opaque origin comparison #56922

[Origin API] Add more test coverage for opaque origin comparison
5f23986
Select commit
Loading
Failed to load commit list.
Community-TC Integration / wpt-chrome-dev-stability succeeded Jan 8, 2026 in 1h 15m 59s

Community-TC (pull_request)

Verify that all tests affected by a pull request are stable when executed in chrome.

Details

View task in Taskcluster | View logs in Taskcluster | View task group in Taskcluster

Task Status

Started: 2026-01-08T13:36:27.170Z
Resolved: 2026-01-08T13:41:54.594Z
Task Execution Time: 5 minutes, 27 seconds, 424 milliseconds
Task Status: completed
Reason Resolved: completed
RunId: 0

Artifacts

- public/logs/live_backing.log
- public/logs/live.log
- public/results/checkrun.md

WPT Command: python3 ./wpt run --channel=dev --verify --verify-no-chaos-mode --verify-repeat-loop=0 --verify-repeat-restart=10 --github-checks-text-file=/home/test/artifacts/checkrun.md --affected base_head --log-mach-level=info --log-mach=- -y --no-pause --no-restart-on-unexpected --install-fonts --verify-log-full --no-headless --enable-swiftshader --install-browser --install-webdriver chrome


[taskcluster 2026-01-08 13:36:27.237Z] Task ID: eAUF7YeZSKaTn9vd5CnIKw
[taskcluster 2026-01-08 13:36:27.237Z] Worker ID: 5487853538806845554
[taskcluster 2026-01-08 13:36:27.237Z] Worker Group: us-east1-d
[taskcluster 2026-01-08 13:36:27.237Z] Worker Node Type: projects/757942385826/machineTypes/n2-standard-4
[taskcluster 2026-01-08 13:36:27.237Z] Worker Pool: proj-wpt/ci
[taskcluster 2026-01-08 13:36:27.237Z] Worker Version: 46.1.0
[taskcluster 2026-01-08 13:36:27.237Z] Public IP: 34.75.237.67
[taskcluster 2026-01-08 13:36:27.237Z] Hostname: proj-wpt-ci-v-jiqhn-rlywxi04kywerq

[taskcluster 2026-01-08 13:36:28.178Z] === Task Starting ===
+ '[' '' ']'
+ '[' -d /etc/profile.d ']'
+ for i in /etc/profile.d/*.sh
+ '[' -r /etc/profile.d/01-locale-fix.sh ']'
+ . /etc/profile.d/01-locale-fix.sh
+++ /usr/bin/locale-check C.UTF-8
++ eval
+ for i in /etc/profile.d/*.sh
+ '[' -r /etc/profile.d/apps-bin-path.sh ']'
+ . /etc/profile.d/apps-bin-path.sh

...(2567 lines hidden)...

 1:16.54 INFO | `Origin.from(Origin.from("https://site.example:123")) is an tuple origin.`                          | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("http://sub.site.example")) is an tuple origin.`                           | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("https://sub.site.example")) is an tuple origin.`                          | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("https://sub.site.example:123")) is an tuple origin.`                      | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("https://xn--mlauted-m2a.example")) is an tuple origin.`                   | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("ftp://ftp.example")) is an tuple origin.`                                 | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("ws://ws.example")) is an tuple origin.`                                   | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("wss://wss.example")) is an tuple origin.`                                 | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("https://trailing.slash/")) is an tuple origin.`                           | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("https://user:pass@site.example")) is an tuple origin.`                    | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("https://has.a.port:1234/and/path")) is an tuple origin.`                  | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("https://ümlauted.example")) is an tuple origin.`                          | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("blob:https://example.com/some-guid")) is an tuple origin.`                | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("ftp://example.com/")) is an tuple origin.`                                | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("https://example.com/path?query#fragment")) is an tuple origin.`           | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("https://127.0.0.1/")) is an tuple origin.`                                | PASS    |          |
 1:16.54 INFO | `Origin.from(Origin.from("https://[::1]/")) is an tuple origin.`                                    | PASS    |          |
 1:16.54 INFO 
 1:16.54 INFO ### /html/browsers/origin/api/origin-from-string.any.html ###
 1:16.54 INFO |                                        Subtest                                         | Results | Messages |
 1:16.54 INFO |----------------------------------------------------------------------------------------|---------|----------|
 1:16.54 INFO |                                                                                        | OK      |          |
 1:16.54 INFO | `Origin.from("") throws a TypeError.`                                                  | PASS    |          |
 1:16.54 INFO | `Origin.from("not-valid") throws a TypeError.`                                         | PASS    |          |
 1:16.54 INFO | `Origin.from("about:blank") is an opaque origin.`                                      | PASS    |          |
 1:16.54 INFO | `Origin.from("data:text/plain,opaque") is an opaque origin.`                           | PASS    |          |
 1:16.54 INFO | `Origin.from("weird-protocol:whatever") is an opaque origin.`                          | PASS    |          |
 1:16.54 INFO | `Origin.from("weird-hierarchical-protocol://host/path?etc") is an opaque origin.`      | PASS    |          |
 1:16.54 INFO | `Origin.from("blob:weird-protocol:whatever") is an opaque origin.`                     | PASS    |          |
 1:16.54 INFO | `Origin.from("blob:weird-hierarchical-protocol://host/path?etc") is an opaque origin.` | PASS    |          |
 1:16.54 INFO | `Origin.from("http://site.example") is an opaque origin.`                              | PASS    |          |
 1:16.54 INFO | `Origin.from("https://site.example") is an opaque origin.`                             | PASS    |          |
 1:16.54 INFO | `Origin.from("https://site.example:123") is an opaque origin.`                         | PASS    |          |
 1:16.54 INFO | `Origin.from("http://sub.site.example") is an opaque origin.`                          | PASS    |          |
 1:16.54 INFO | `Origin.from("https://sub.site.example") is an opaque origin.`                         | PASS    |          |
 1:16.54 INFO | `Origin.from("https://sub.site.example:123") is an opaque origin.`                     | PASS    |          |
 1:16.54 INFO | `Origin.from("https://xn--mlauted-m2a.example") is an opaque origin.`                  | PASS    |          |
 1:16.54 INFO | `Origin.from("ftp://ftp.example") is an opaque origin.`                                | PASS    |          |
 1:16.54 INFO | `Origin.from("ws://ws.example") is an opaque origin.`                                  | PASS    |          |
 1:16.54 INFO | `Origin.from("wss://wss.example") is an opaque origin.`                                | PASS    |          |
 1:16.54 INFO | `Origin.from("https://trailing.slash/") is an opaque origin.`                          | PASS    |          |
 1:16.54 INFO | `Origin.from("https://user:pass@site.example") is an opaque origin.`                   | PASS    |          |
 1:16.54 INFO | `Origin.from("https://has.a.port:1234/and/path") is an opaque origin.`                 | PASS    |          |
 1:16.54 INFO | `Origin.from("https://ümlauted.example") is an opaque origin.`                         | PASS    |          |
 1:16.54 INFO | `Origin.from("blob:https://example.com/some-guid") is an opaque origin.`               | PASS    |          |
 1:16.54 INFO | `Origin.from("ftp://example.com/") is an opaque origin.`                               | PASS    |          |
 1:16.54 INFO | `Origin.from("https://example.com/path?query#fragment") is an opaque origin.`          | PASS    |          |
 1:16.54 INFO | `Origin.from("https://127.0.0.1/") is an opaque origin.`                               | PASS    |          |
 1:16.54 INFO | `Origin.from("https://[::1]/") is an opaque origin.`                                   | PASS    |          |
 1:16.54 INFO 
 1:16.54 INFO ### /html/browsers/origin/api/origin-from-string.any.worker.html ###
 1:16.54 INFO |                                        Subtest                                         | Results | Messages |
 1:16.54 INFO |----------------------------------------------------------------------------------------|---------|----------|
 1:16.54 INFO |                                                                                        | OK      |          |
 1:16.54 INFO | `Origin.from("") throws a TypeError.`                                                  | PASS    |          |
 1:16.55 INFO | `Origin.from("not-valid") throws a TypeError.`                                         | PASS    |          |
 1:16.55 INFO | `Origin.from("about:blank") is an opaque origin.`                                      | PASS    |          |
 1:16.55 INFO | `Origin.from("data:text/plain,opaque") is an opaque origin.`                           | PASS    |          |
 1:16.55 INFO | `Origin.from("weird-protocol:whatever") is an opaque origin.`                          | PASS    |          |
 1:16.55 INFO | `Origin.from("weird-hierarchical-protocol://host/path?etc") is an opaque origin.`      | PASS    |          |
 1:16.55 INFO | `Origin.from("blob:weird-protocol:whatever") is an opaque origin.`                     | PASS    |          |
 1:16.55 INFO | `Origin.from("blob:weird-hierarchical-protocol://host/path?etc") is an opaque origin.` | PASS    |          |
 1:16.55 INFO | `Origin.from("http://site.example") is an opaque origin.`                              | PASS    |          |
 1:16.55 INFO | `Origin.from("https://site.example") is an opaque origin.`                             | PASS    |          |
 1:16.55 INFO | `Origin.from("https://site.example:123") is an opaque origin.`                         | PASS    |          |
 1:16.55 INFO | `Origin.from("http://sub.site.example") is an opaque origin.`                          | PASS    |          |
 1:16.55 INFO | `Origin.from("https://sub.site.example") is an opaque origin.`                         | PASS    |          |
 1:16.55 INFO | `Origin.from("https://sub.site.example:123") is an opaque origin.`                     | PASS    |          |
 1:16.55 INFO | `Origin.from("https://xn--mlauted-m2a.example") is an opaque origin.`                  | PASS    |          |
 1:16.55 INFO | `Origin.from("ftp://ftp.example") is an opaque origin.`                                | PASS    |          |
 1:16.55 INFO | `Origin.from("ws://ws.example") is an opaque origin.`                                  | PASS    |          |
 1:16.55 INFO | `Origin.from("wss://wss.example") is an opaque origin.`                                | PASS    |          |
 1:16.55 INFO | `Origin.from("https://trailing.slash/") is an opaque origin.`                          | PASS    |          |
 1:16.55 INFO | `Origin.from("https://user:pass@site.example") is an opaque origin.`                   | PASS    |          |
 1:16.55 INFO | `Origin.from("https://has.a.port:1234/and/path") is an opaque origin.`                 | PASS    |          |
 1:16.55 INFO | `Origin.from("https://ümlauted.example") is an opaque origin.`                         | PASS    |          |
 1:16.55 INFO | `Origin.from("blob:https://example.com/some-guid") is an opaque origin.`               | PASS    |          |
 1:16.55 INFO | `Origin.from("ftp://example.com/") is an opaque origin.`                               | PASS    |          |
 1:16.55 INFO | `Origin.from("https://example.com/path?query#fragment") is an opaque origin.`          | PASS    |          |
 1:16.55 INFO | `Origin.from("https://127.0.0.1/") is an opaque origin.`                               | PASS    |          |
 1:16.55 INFO | `Origin.from("https://[::1]/") is an opaque origin.`                                   | PASS    |          |
 1:16.55 INFO 
 1:16.55 INFO ### /html/browsers/origin/api/origin-from-url.any.html ###
 1:16.55 INFO |                                        Subtest                                         | Results | Messages |
 1:16.55 INFO |----------------------------------------------------------------------------------------|---------|----------|
 1:16.55 INFO |                                                                                        | OK      |          |
 1:16.55 INFO | `Origin.from("") throws a TypeError.`                                                  | PASS    |          |
 1:16.55 INFO | `Origin.from("not-valid") throws a TypeError.`                                         | PASS    |          |
 1:16.55 INFO | `Origin.from("about:blank") is an opaque origin.`                                      | PASS    |          |
 1:16.55 INFO | `Origin.from("data:text/plain,opaque") is an opaque origin.`                           | PASS    |          |
 1:16.55 INFO | `Origin.from("weird-protocol:whatever") is an opaque origin.`                          | PASS    |          |
 1:16.55 INFO | `Origin.from("weird-hierarchical-protocol://host/path?etc") is an opaque origin.`      | PASS    |          |
 1:16.55 INFO | `Origin.from("blob:weird-protocol:whatever") is an opaque origin.`                     | PASS    |          |
 1:16.55 INFO | `Origin.from("blob:weird-hierarchical-protocol://host/path?etc") is an opaque origin.` | PASS    |          |
 1:16.55 INFO | `Origin.from("http://site.example") is an opaque origin.`                              | PASS    |          |
 1:16.55 INFO | `Origin.from("https://site.example") is an opaque origin.`                             | PASS    |          |
 1:16.55 INFO | `Origin.from("https://site.example:123") is an opaque origin.`                         | PASS    |          |
 1:16.55 INFO | `Origin.from("http://sub.site.example") is an opaque origin.`                          | PASS    |          |
 1:16.55 INFO | `Origin.from("https://sub.site.example") is an opaque origin.`                         | PASS    |          |
 1:16.55 INFO | `Origin.from("https://sub.site.example:123") is an opaque origin.`                     | PASS    |          |
 1:16.55 INFO | `Origin.from("https://xn--mlauted-m2a.example") is an opaque origin.`                  | PASS    |          |
 1:16.55 INFO | `Origin.from("ftp://ftp.example") is an opaque origin.`                                | PASS    |          |
 1:16.55 INFO | `Origin.from("ws://ws.example") is an opaque origin.`                                  | PASS    |          |
 1:16.55 INFO | `Origin.from("wss://wss.example") is an opaque origin.`                                | PASS    |          |
 1:16.55 INFO | `Origin.from("https://trailing.slash/") is an opaque origin.`                          | PASS    |          |
 1:16.55 INFO | `Origin.from("https://user:pass@site.example") is an opaque origin.`                   | PASS    |          |
 1:16.55 INFO | `Origin.from("https://has.a.port:1234/and/path") is an opaque origin.`                 | PASS    |          |
 1:16.55 INFO | `Origin.from("https://ümlauted.example") is an opaque origin.`                         | PASS    |          |
 1:16.55 INFO | `Origin.from("blob:https://example.com/some-guid") is an opaque origin.`               | PASS    |          |
 1:16.55 INFO | `Origin.from("ftp://example.com/") is an opaque origin.`                               | PASS    |          |
 1:16.55 INFO | `Origin.from("https://example.com/path?query#fragment") is an opaque origin.`          | PASS    |          |
 1:16.55 INFO | `Origin.from("https://127.0.0.1/") is an opaque origin.`                               | PASS    |          |
 1:16.55 INFO | `Origin.from("https://[::1]/") is an opaque origin.`                                   | PASS    |          |
 1:16.55 INFO 
 1:16.55 INFO ### /html/browsers/origin/api/origin-from-url.any.worker.html ###
 1:16.55 INFO |                                        Subtest                                         | Results | Messages |
 1:16.55 INFO |----------------------------------------------------------------------------------------|---------|----------|
 1:16.55 INFO |                                                                                        | OK      |          |
 1:16.55 INFO | `Origin.from("") throws a TypeError.`                                                  | PASS    |          |
 1:16.55 INFO | `Origin.from("not-valid") throws a TypeError.`                                         | PASS    |          |
 1:16.55 INFO | `Origin.from("about:blank") is an opaque origin.`                                      | PASS    |          |
 1:16.55 INFO | `Origin.from("data:text/plain,opaque") is an opaque origin.`                           | PASS    |          |
 1:16.55 INFO | `Origin.from("weird-protocol:whatever") is an opaque origin.`                          | PASS    |          |
 1:16.55 INFO | `Origin.from("weird-hierarchical-protocol://host/path?etc") is an opaque origin.`      | PASS    |          |
 1:16.55 INFO | `Origin.from("blob:weird-protocol:whatever") is an opaque origin.`                     | PASS    |          |
 1:16.55 INFO | `Origin.from("blob:weird-hierarchical-protocol://host/path?etc") is an opaque origin.` | PASS    |          |
 1:16.55 INFO | `Origin.from("http://site.example") is an opaque origin.`                              | PASS    |          |
 1:16.55 INFO | `Origin.from("https://site.example") is an opaque origin.`                             | PASS    |          |
 1:16.55 INFO | `Origin.from("https://site.example:123") is an opaque origin.`                         | PASS    |          |
 1:16.55 INFO | `Origin.from("http://sub.site.example") is an opaque origin.`                          | PASS    |          |
 1:16.55 INFO | `Origin.from("https://sub.site.example") is an opaque origin.`                         | PASS    |          |
 1:16.55 INFO | `Origin.from("https://sub.site.example:123") is an opaque origin.`                     | PASS    |          |
 1:16.55 INFO | `Origin.from("https://xn--mlauted-m2a.example") is an opaque origin.`                  | PASS    |          |
 1:16.55 INFO | `Origin.from("ftp://ftp.example") is an opaque origin.`                                | PASS    |          |
 1:16.55 INFO | `Origin.from("ws://ws.example") is an opaque origin.`                                  | PASS    |          |
 1:16.55 INFO | `Origin.from("wss://wss.example") is an opaque origin.`                                | PASS    |          |
 1:16.55 INFO | `Origin.from("https://trailing.slash/") is an opaque origin.`                          | PASS    |          |
 1:16.55 INFO | `Origin.from("https://user:pass@site.example") is an opaque origin.`                   | PASS    |          |
 1:16.55 INFO | `Origin.from("https://has.a.port:1234/and/path") is an opaque origin.`                 | PASS    |          |
 1:16.55 INFO | `Origin.from("https://ümlauted.example") is an opaque origin.`                         | PASS    |          |
 1:16.55 INFO | `Origin.from("blob:https://example.com/some-guid") is an opaque origin.`               | PASS    |          |
 1:16.55 INFO | `Origin.from("ftp://example.com/") is an opaque origin.`                               | PASS    |          |
 1:16.55 INFO | `Origin.from("https://example.com/path?query#fragment") is an opaque origin.`          | PASS    |          |
 1:16.55 INFO | `Origin.from("https://127.0.0.1/") is an opaque origin.`                               | PASS    |          |
 1:16.55 INFO | `Origin.from("https://[::1]/") is an opaque origin.`                                   | PASS    |          |
 1:16.55 INFO 
 1:16.55 INFO ### /html/browsers/origin/api/origin-from-window.window.html ###
 1:16.55 INFO |                                Subtest                                | Results | Messages |
 1:16.55 INFO |-----------------------------------------------------------------------|---------|----------|
 1:16.55 INFO |                                                                       | OK      |          |
 1:16.55 INFO | `Origin.from(window) returns a tuple origin.`                         | PASS    |          |
 1:16.55 INFO | `Origin.from(Window) returns a tuple origin for same-origin frames.`  | PASS    |          |
 1:16.55 INFO | `Origin.from(Window) throws for cross-origin frames.`                 | PASS    |          |
 1:16.55 INFO | `Origin.from(Window) throws for sandboxed frames.`                    | PASS    |          |
 1:16.55 INFO | `Origin.from(Window) returns a tuple origin for same-origin windows.` | PASS    |          |
 1:16.55 INFO | `Origin.from(Window) throws for cross-origin windows.`                | PASS    |          |
 1:16.55 INFO | `Origin.from(Window) returns an opaque origin for a data URL source.` | PASS    |          |
 1:16.55 INFO 
 1:16.55 INFO ### /html/browsers/origin/api/origin-from-worker.window.html ###
 1:16.55 INFO |                             Subtest                             | Results | Messages |
 1:16.55 INFO |-----------------------------------------------------------------|---------|----------|
 1:16.55 INFO |                                                                 | OK      |          |
 1:16.55 INFO | `Comparison of Origin.from(Worker) for opaque data URL origin.` | PASS    |          |
 1:16.55 INFO | `Comparison of Origin.from(Worker) tuple origins.`              | PASS    |          |
 1:16.55 INFO 
 1:16.55 INFO ### /html/browsers/origin/api/origin-from.any.html ###
 1:16.55 INFO |                                Subtest                                 | Results | Messages |
 1:16.55 INFO |------------------------------------------------------------------------|---------|----------|
 1:16.55 INFO |                                                                        | OK      |          |
 1:16.55 INFO | `Origin.from(null) throws a TypeError.`                                | PASS    |          |
 1:16.55 INFO | `Origin.from(undefined) throws a TypeError.`                           | PASS    |          |
 1:16.55 INFO | `Origin.from(1) throws a TypeError.`                                   | PASS    |          |
 1:16.55 INFO | `Origin.from(1.1) throws a TypeError.`                                 | PASS    |          |
 1:16.55 INFO | `Origin.from(true) throws a TypeError.`                                | PASS    |          |
 1:16.55 INFO | `Origin.from([object Object]) throws a TypeError.`                     | PASS    |          |
 1:16.55 INFO | `Origin.from(function Object() { [native code] }) throws a TypeError.` | PASS    |          |
 1:16.55 INFO | `Origin.from(function Origin() { [native code] }) throws a TypeError.` | PASS    |          |
 1:16.55 INFO | `Origin.from(function from() { [native code] }) throws a TypeError.`   | PASS    |          |
 1:16.55 INFO 
 1:16.55 INFO ### /html/browsers/origin/api/origin-from.any.worker.html ###
 1:16.55 INFO |                                Subtest                                 | Results | Messages |
 1:16.55 INFO |------------------------------------------------------------------------|---------|----------|
 1:16.55 INFO |                                                                        | OK      |          |
 1:16.55 INFO | `Origin.from(null) throws a TypeError.`                                | PASS    |          |
 1:16.55 INFO | `Origin.from(undefined) throws a TypeError.`                           | PASS    |          |
 1:16.55 INFO | `Origin.from(1) throws a TypeError.`                                   | PASS    |          |
 1:16.55 INFO | `Origin.from(1.1) throws a TypeError.`                                 | PASS    |          |
 1:16.55 INFO | `Origin.from(true) throws a TypeError.`                                | PASS    |          |
 1:16.55 INFO | `Origin.from([object Object]) throws a TypeError.`                     | PASS    |          |
 1:16.55 INFO | `Origin.from(function Object() { [native code] }) throws a TypeError.` | PASS    |          |
 1:16.55 INFO | `Origin.from(function Origin() { [native code] }) throws a TypeError.` | PASS    |          |
 1:16.55 INFO | `Origin.from(function from() { [native code] }) throws a TypeError.`   | PASS    |          |
 1:16.55 INFO 
 1:16.55 INFO ::: Running tests in a loop with restarts 10 times : PASS
 1:16.55 INFO :::
 1:16.55 INFO ::: Test verification PASS
 1:16.55 INFO :::
[taskcluster 2026-01-08 13:41:53.219Z] === Task Finished ===
[taskcluster 2026-01-08 13:41:53.638Z] Successful task run with exit code: 0 completed in 326.402 seconds