Skip to content

Support attribute API for processing instructions

23f2fa8
Select commit
Loading
Failed to load commit list.
Merged

Support attribute API for processing instructions #58294

Support attribute API for processing instructions
23f2fa8
Select commit
Loading
Failed to load commit list.
Community-TC Integration / wpt-firefox-nightly-stability succeeded Mar 5, 2026 in 6m 50s

Community-TC (pull_request)

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

Details

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

Task Status

Started: 2026-03-05T19:13:42.943Z
Resolved: 2026-03-05T19:16:42.984Z
Task Execution Time: 3 minutes, 41 milliseconds
Task Status: completed
Reason Resolved: completed
TaskId: CeUgqTY7TJeRp4kgYacuEA
RunId: 0

Artifacts

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

WPT Command: python3 ./wpt run --channel=nightly --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 --binary=/home/test/build/firefox/firefox firefox


[taskcluster 2026-03-05 19:13:43.095Z] Task ID: CeUgqTY7TJeRp4kgYacuEA
[taskcluster 2026-03-05 19:13:43.095Z] Worker ID: 6219671255420005019
[taskcluster 2026-03-05 19:13:43.095Z] Worker Group: us-east1-c
[taskcluster 2026-03-05 19:13:43.095Z] Worker Node Type: projects/757942385826/machineTypes/n2-standard-4
[taskcluster 2026-03-05 19:13:43.095Z] Worker Pool: proj-wpt/ci
[taskcluster 2026-03-05 19:13:43.095Z] Worker Version: 46.1.0
[taskcluster 2026-03-05 19:13:43.095Z] Public IP: 34.138.114.86
[taskcluster 2026-03-05 19:13:43.095Z] Hostname: proj-wpt-ci-hfkdwwsqrxy3xqtxv0psqa

[taskcluster 2026-03-05 19:13:44.280Z] === 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

...(33262 lines hidden)...

      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5
test_invalid_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:255:24
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_invalid_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:253:9
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:304:30
  FAIL Invalid attribute name: >x - assert_throws_dom: function "() => {
        pi.setAttribute(name, "value");
      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5
test_invalid_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:255:24
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_invalid_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:253:9
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:305:30
  FAIL Invalid attribute name: /x/ - assert_throws_dom: function "() => {
        pi.setAttribute(name, "value");
      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5
test_invalid_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:255:24
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_invalid_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:253:9
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:306:30
  FAIL Invalid attribute name: / - assert_throws_dom: function "() => {
        pi.setAttribute(name, "value");
      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5
test_invalid_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:255:24
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_invalid_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:253:9
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:307:30
  FAIL Invalid attribute name: x/ - assert_throws_dom: function "() => {
        pi.setAttribute(name, "value");
      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5
test_invalid_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:255:24
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_invalid_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:253:9
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:308:30
  FAIL Invalid attribute name: x	 - assert_throws_dom: function "() => {
        pi.setAttribute(name, "value");
      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5
test_invalid_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:255:24
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_invalid_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:253:9
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:309:30
  FAIL Invalid attribute name: 	x - assert_throws_dom: function "() => {
        pi.setAttribute(name, "value");
      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5
test_invalid_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:255:24
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_invalid_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:253:9
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:310:30
  FAIL Invalid attribute name: x
 - assert_throws_dom: function "() => {
        pi.setAttribute(name, "value");
      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5
test_invalid_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:255:24
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_invalid_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:253:9
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:311:30
  FAIL Invalid attribute name: 
x - assert_throws_dom: function "() => {
        pi.setAttribute(name, "value");
      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5
test_invalid_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:255:24
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_invalid_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:253:9
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:312:30
  FAIL Invalid attribute name: x
 - assert_throws_dom: function "() => {
        pi.setAttribute(name, "value");
      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5
test_invalid_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:255:24
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_invalid_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:253:9
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:313:30
  FAIL Invalid attribute name: 
x - assert_throws_dom: function "() => {
        pi.setAttribute(name, "value");
      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5
test_invalid_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:255:24
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_invalid_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:253:9
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:314:30
  FAIL Equivalent attribute name (source: DOM): ABC -> abc - pi.setAttribute is not a function
test_equivalent_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:275:14
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_equivalent_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:272:11
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:316:33
  FAIL Equivalent attribute name (source: parser): ABC -> abc - pi.setAttribute is not a function
test_equivalent_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:275:14
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_equivalent_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:272:11
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:316:33
  FAIL Equivalent attribute name (source: DOM): abC -> abc - pi.setAttribute is not a function
test_equivalent_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:275:14
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_equivalent_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:272:11
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:317:33
  FAIL Equivalent attribute name (source: parser): abC -> abc - pi.setAttribute is not a function
test_equivalent_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:275:14
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_equivalent_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:272:11
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:317:33
  FAIL Equivalent attribute name (source: DOM): x123A -> x123a - pi.setAttribute is not a function
test_equivalent_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:275:14
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_equivalent_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:272:11
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:318:33
  FAIL Equivalent attribute name (source: parser): x123A -> x123a - pi.setAttribute is not a function
test_equivalent_attribute_name/<@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:275:14
Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2869:25
test@http://web-platform.test:8000/resources/testharness.js:633:30
test_equivalent_attribute_name@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:272:11
@http://web-platform.test:8000/html/dom/partial-updates/tentative/processing-instruction-attributes.html:318:33
 1:07.13 INFO Got 10 unexpected results, with 0 unexpected passes
 1:07.13 wptserve INFO Stopped http server on 127.0.0.1:8000
 1:07.13 wptserve INFO Stopped http server on 127.0.0.1:8002
 1:07.13 wptserve INFO Stopped http server on 127.0.0.1:8001
 1:07.14 wptserve INFO Stopped http server on 127.0.0.1:8003
 1:07.14 wptserve INFO Stopped http server on 127.0.0.1:8444
 1:07.15 wptserve INFO Stopped http server on 127.0.0.1:8443
 1:07.15 wptserve INFO Stopped http server on 127.0.0.1:8445
 1:07.15 wptserve INFO Stopped http server on 127.0.0.1:8446
 1:07.15 wptserve INFO Stopped http server on 127.0.0.1:9000
 1:07.16 wptserve INFO Stopped WebTransport over HTTP/3 server on 127.0.0.1:11000
 1:07.64 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 1:07.64 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
 1:07.67 INFO Removed font: Ahem.ttf
 1:07.70 INFO Closing logging queue
 1:07.70 INFO queue closed
 1:07.71 INFO ::: Ran 10 of expected 10 iterations.
 1:07.71 INFO ## All results ##

 1:07.71 INFO ### /html/dom/partial-updates/tentative/processing-instruction-attributes.html ###
 1:07.71 INFO |                                 Subtest                                  | Results |                                                                                                                          Messages                                                                                                                         |
 1:07.71 INFO |--------------------------------------------------------------------------|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 1:07.71 INFO |                                                                          | OK      |                                                                                                                                                                                                                                                           |
 1:07.71 INFO | `Processing instruction attribute mutation from DOM`                     | FAIL    | `pi.hasAttributes is not a function`                                                                                                                                                                                                                      |
 1:07.71 INFO | `Processing instruction attribute mutation from parser`                  | FAIL    | `assert_equals: expected 7 but got 8`                                                                                                                                                                                                                     |
 1:07.71 INFO | `Processing instruction attribute mutation from XML`                     | FAIL    | `pi.hasAttributes is not a function`                                                                                                                                                                                                                      |
 1:07.71 INFO | `Processing instruction attributes with xml-stylesheet in HTML document` | FAIL    | `pi.hasAttributes is not a function`                                                                                                                                                                                                                      |
 1:07.71 INFO | `Processing instruction attributes with xml-stylesheet in XML document`  | FAIL    | `pi.hasAttributes is not a function`                                                                                                                                                                                                                      |
 1:07.71 INFO | `Processing instruction toggleAttribute`                                 | FAIL    | `pi.getAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: = (source: DOM)`                                 | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: = (source: parser)`                              | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: = (source: xml)`                                 | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: axx" (source: DOM)`                              | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: axx" (source: parser)`                           | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: axx" (source: xml)`                              | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: axx> (source: DOM)`                              | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: axx> (source: parser)`                           | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: axx> (source: xml)`                              | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: some<> (source: DOM)`                            | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: some<> (source: parser)`                         | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: some<> (source: xml)`                            | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: '""' (source: DOM)`                              | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: '""' (source: parser)`                           | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: '""' (source: xml)`                              | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: aa"aa" (source: DOM)`                            | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: aa"aa" (source: parser)`                         | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `check attribute value: aa"aa" (source: xml)`                            | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `Invalid attribute name: =`                                              | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: a=`                                             | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: =x`                                             | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: b>`                                             | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: >`                                              | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: >x`                                             | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: /x/`                                            | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: /`                                              | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: x/`                                             | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: x\t`                                            | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: \tx`                                            | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: x\n`                                            | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: \nx`                                            | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: x\r`                                            | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Invalid attribute name: \rx`                                            | FAIL    | `assert_throws_dom: function "() => {\n        pi.setAttribute(name, "value");\n      }" threw object "TypeError: pi.setAttribute is not a function" that is not a DOMException InvalidCharacterError: property "code" is equal to undefined, expected 5` |
 1:07.71 INFO | `Equivalent attribute name (source: DOM): ABC -> abc`                    | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `Equivalent attribute name (source: parser): ABC -> abc`                 | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `Equivalent attribute name (source: DOM): abC -> abc`                    | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `Equivalent attribute name (source: parser): abC -> abc`                 | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `Equivalent attribute name (source: DOM): x123A -> x123a`                | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO | `Equivalent attribute name (source: parser): x123A -> x123a`             | FAIL    | `pi.setAttribute is not a function`                                                                                                                                                                                                                       |
 1:07.71 INFO 
 1:07.71 INFO ::: Running tests in a loop with restarts 10 times : PASS
 1:07.71 INFO :::
 1:07.71 INFO ::: Test verification PASS
 1:07.71 INFO :::
[taskcluster 2026-03-05 19:16:40.895Z] === Task Finished ===
[taskcluster 2026-03-05 19:16:41.303Z] Successful task run with exit code: 0 completed in 178.208 seconds