WPT
wpt / trusted-types / script-enforcement-003.html
Spec: Trusted Types ↗
Runs: Chrome 155.0.8038.0 (wpt@7addae031, 2026-09-02) | Firefox 157.0a1 (wpt@7addae031, 2026-09-02) | Safari 251 preview (wpt@5ce815a83, 2026-08-27) | Ladybird 1.0-a7884 (wpt@b1a7025f8, 2026-09-02) | Servo Servo 0.6 (wpt@09159dcb3, 2026-09-02) | Blitz 188486089 (wpt@a95401e4e, 2026-09-02)
View on the Blitz WPT dashboard | Open test on wpt.live | wpt.fyi
| Chrome | Firefox | Safari | Ladybird | Servo | Blitz | |
|---|---|---|---|---|---|---|
| Total | 33/33 | 33/33 | 31/33 | 24/33 | 5/33 | NOT RUN |
| Subtest | Chrome | Firefox | Safari | Ladybird | Servo | Blitz |
|---|---|---|---|---|---|---|
| The SVGScriptElement is initially trusted. | PASS | PASS | PASS | FAIL | FAIL | — |
| Script source set via Element.textContent drops trustworthiness. | PASS | PASS | PASS | FAIL | PASS | — |
| Script source set via Node.textContent drops trustworthiness. | PASS | PASS | PASS | PASS | PASS | — |
| Script source set via TrustedHTML sink Element.innerHTML drops trustworthiness. | PASS | PASS | PASS | FAIL | PASS | — |
| Script source set via TrustedHTML sink Element.outerHTML drops trustworthiness. | PASS | PASS | PASS | PASS | PASS | — |
| Script source set via TrustedHTML sink Element.setHTMLUnsafe() drops trustworthiness. | PASS | PASS | PASS | FAIL | PASS | — |
| Script source cannot be set via Element.setHTML(). | PASS | PASS | — | — | — | — |
| Splitting script source via Text.splitText() keeps trustworthiness. | PASS | PASS | PASS | FAIL | — | — |
| Normalizing script source via Element.normalize() keeps trustworthiness. | PASS | PASS | PASS | FAIL | — | — |
| Script source set via Node.nodeValue drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via CharacterData.data drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via CharacterData.appendData() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via CharacterData.insertData() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via CharacterData.replaceData() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via CharacterData.deleteData() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via CharacterData.before() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via CharacterData.after() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via CharacterData.remove() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via CharacterData.replaceWith() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via Node.appendChild() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via Node.insertBefore() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via Node.replaceChild() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via Node.removeChild() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via Element.prepend() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via Element.append() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via Element.replaceChildren() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via Element.moveBefore() drops trustworthiness. | PASS | PASS | FAIL | PASS | — | — |
| Setting script source via TrustedHTML sink Node.insertAdjacentHTML() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via Node.insertAdjacentText() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via Range.insertNode() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Setting script source via Range.deleteContents() drops trustworthiness. | PASS | PASS | PASS | PASS | — | — |
| Cloning a script via Node.cloneNode() drops trustworthiness. | PASS | PASS | PASS | FAIL | — | — |
| Cloning a script via Range.cloneContents() drops trustworthiness. | PASS | PASS | PASS | FAIL | — | — |