Stub out Trusted Types interfaces (#36355)

Some methods are implemented fully, while others are implemented
partly. With these implementations, there are no observed crashes
when running the trusted-types web-platform-tests.

Most notably, the tests/wpt/tests/trusted-types/idlharness.window.js
is now fully passing.

Part of #36258

Signed-off-by: Tim van der Lippe <tvanderlippe@gmail.com>
This commit is contained in:
Tim van der Lippe 2025-04-05 15:08:56 +02:00 committed by GitHub
parent 3f24b44e15
commit b87bf0b806
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
145 changed files with 3377 additions and 559 deletions

View file

@ -116,6 +116,7 @@ pub struct Preferences {
pub dom_testperf_enabled: bool,
// https://testutils.spec.whatwg.org#availability
pub dom_testutils_enabled: bool,
pub dom_trusted_types_enabled: bool,
/// Enable the [URLPattern] API.
///
/// [URLPattern]: https://developer.mozilla.org/en-US/docs/Web/API/URLPattern
@ -290,6 +291,7 @@ impl Preferences {
dom_testing_html_input_element_select_files_enabled: false,
dom_testperf_enabled: false,
dom_testutils_enabled: false,
dom_trusted_types_enabled: false,
dom_urlpattern_enabled: false,
dom_webgl2_enabled: false,
dom_webgpu_enabled: false,

View file

@ -125,6 +125,7 @@ use crate::dom::promise::Promise;
use crate::dom::readablestream::ReadableStream;
use crate::dom::serviceworker::ServiceWorker;
use crate::dom::serviceworkerregistration::ServiceWorkerRegistration;
use crate::dom::trustedtypepolicyfactory::TrustedTypePolicyFactory;
use crate::dom::underlyingsourcecontainer::UnderlyingSourceType;
#[cfg(feature = "webgpu")]
use crate::dom::webgpu::gpudevice::GPUDevice;
@ -3300,6 +3301,16 @@ impl GlobalScope {
.borrow_mut()
.remove(&callback_id)
}
pub(crate) fn trusted_types(&self, can_gc: CanGc) -> DomRoot<TrustedTypePolicyFactory> {
if let Some(window) = self.downcast::<Window>() {
return window.TrustedTypes(can_gc);
}
if let Some(worker) = self.downcast::<WorkerGlobalScope>() {
return worker.TrustedTypes(can_gc);
}
unreachable!();
}
}
/// Returns the Rust global scope from a JS global object.

View file

@ -575,6 +575,11 @@ pub(crate) mod touchlist;
pub(crate) mod trackevent;
pub(crate) mod transitionevent;
pub(crate) mod treewalker;
pub(crate) mod trustedhtml;
pub(crate) mod trustedscript;
pub(crate) mod trustedscripturl;
pub(crate) mod trustedtypepolicy;
pub(crate) mod trustedtypepolicyfactory;
pub(crate) mod uievent;
pub(crate) mod underlyingsourcecontainer;
pub(crate) mod url;

View file

@ -0,0 +1,45 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
use dom_struct::dom_struct;
use crate::dom::bindings::codegen::Bindings::TrustedHTMLBinding::TrustedHTMLMethods;
use crate::dom::bindings::reflector::{Reflector, reflect_dom_object};
use crate::dom::bindings::root::DomRoot;
use crate::dom::bindings::str::DOMString;
use crate::dom::globalscope::GlobalScope;
use crate::script_runtime::CanGc;
#[dom_struct]
pub struct TrustedHTML {
reflector_: Reflector,
data: String,
}
impl TrustedHTML {
fn new_inherited(data: String) -> Self {
Self {
reflector_: Reflector::new(),
data,
}
}
#[cfg_attr(crown, allow(crown::unrooted_must_root))]
pub(crate) fn new(data: String, global: &GlobalScope, can_gc: CanGc) -> DomRoot<Self> {
reflect_dom_object(Box::new(Self::new_inherited(data)), global, can_gc)
}
}
impl TrustedHTMLMethods<crate::DomTypeHolder> for TrustedHTML {
/// <https://www.w3.org/TR/trusted-types/#trustedhtml-stringification-behavior>
fn Stringifier(&self) -> DOMString {
DOMString::from(&*self.data)
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedhtml-tojson>
fn ToJSON(&self) -> DOMString {
DOMString::from(&*self.data)
}
}

View file

@ -0,0 +1,45 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
use dom_struct::dom_struct;
use crate::dom::bindings::codegen::Bindings::TrustedScriptBinding::TrustedScriptMethods;
use crate::dom::bindings::reflector::{Reflector, reflect_dom_object};
use crate::dom::bindings::root::DomRoot;
use crate::dom::bindings::str::DOMString;
use crate::dom::globalscope::GlobalScope;
use crate::script_runtime::CanGc;
#[dom_struct]
pub struct TrustedScript {
reflector_: Reflector,
data: String,
}
impl TrustedScript {
fn new_inherited(data: String) -> Self {
Self {
reflector_: Reflector::new(),
data,
}
}
#[cfg_attr(crown, allow(crown::unrooted_must_root))]
pub(crate) fn new(data: String, global: &GlobalScope, can_gc: CanGc) -> DomRoot<Self> {
reflect_dom_object(Box::new(Self::new_inherited(data)), global, can_gc)
}
}
impl TrustedScriptMethods<crate::DomTypeHolder> for TrustedScript {
/// <https://www.w3.org/TR/trusted-types/#trustedscript-stringification-behavior>
fn Stringifier(&self) -> DOMString {
DOMString::from(&*self.data)
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedscript-tojson>
fn ToJSON(&self) -> DOMString {
DOMString::from(&*self.data)
}
}

View file

@ -0,0 +1,45 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
use dom_struct::dom_struct;
use crate::dom::bindings::codegen::Bindings::TrustedScriptURLBinding::TrustedScriptURLMethods;
use crate::dom::bindings::reflector::{Reflector, reflect_dom_object};
use crate::dom::bindings::root::DomRoot;
use crate::dom::bindings::str::DOMString;
use crate::dom::globalscope::GlobalScope;
use crate::script_runtime::CanGc;
#[dom_struct]
pub struct TrustedScriptURL {
reflector_: Reflector,
data: String,
}
impl TrustedScriptURL {
fn new_inherited(data: String) -> Self {
Self {
reflector_: Reflector::new(),
data,
}
}
#[cfg_attr(crown, allow(crown::unrooted_must_root))]
pub(crate) fn new(data: String, global: &GlobalScope, can_gc: CanGc) -> DomRoot<Self> {
reflect_dom_object(Box::new(Self::new_inherited(data)), global, can_gc)
}
}
impl TrustedScriptURLMethods<crate::DomTypeHolder> for TrustedScriptURL {
/// <https://www.w3.org/TR/trusted-types/#trustedscripturl-stringification-behavior>
fn Stringifier(&self) -> DOMString {
DOMString::from(&*self.data)
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedscripturl-tojson>
fn ToJSON(&self) -> DOMString {
DOMString::from(&*self.data)
}
}

View file

@ -0,0 +1,77 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
use dom_struct::dom_struct;
use js::rust::HandleValue;
use crate::dom::bindings::codegen::Bindings::TrustedTypePolicyBinding::TrustedTypePolicyMethods;
use crate::dom::bindings::reflector::{DomGlobal, Reflector, reflect_dom_object};
use crate::dom::bindings::root::DomRoot;
use crate::dom::bindings::str::DOMString;
use crate::dom::globalscope::GlobalScope;
use crate::dom::trustedhtml::TrustedHTML;
use crate::dom::trustedscript::TrustedScript;
use crate::dom::trustedscripturl::TrustedScriptURL;
use crate::script_runtime::{CanGc, JSContext};
#[dom_struct]
pub struct TrustedTypePolicy {
reflector_: Reflector,
name: String,
}
impl TrustedTypePolicy {
fn new_inherited(name: String) -> Self {
Self {
reflector_: Reflector::new(),
name,
}
}
#[cfg_attr(crown, allow(crown::unrooted_must_root))]
pub(crate) fn new(name: String, global: &GlobalScope, can_gc: CanGc) -> DomRoot<Self> {
reflect_dom_object(Box::new(Self::new_inherited(name)), global, can_gc)
}
}
impl TrustedTypePolicyMethods<crate::DomTypeHolder> for TrustedTypePolicy {
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicy-name>
fn Name(&self) -> DOMString {
DOMString::from(&*self.name)
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicy-createhtml>
fn CreateHTML(
&self,
_: JSContext,
data: DOMString,
_: Vec<HandleValue>,
can_gc: CanGc,
) -> DomRoot<TrustedHTML> {
// TODO(36258): handle arguments
TrustedHTML::new(data.to_string(), &self.global(), can_gc)
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicy-createscript>
fn CreateScript(
&self,
_: JSContext,
data: DOMString,
_: Vec<HandleValue>,
can_gc: CanGc,
) -> DomRoot<TrustedScript> {
// TODO(36258): handle arguments
TrustedScript::new(data.to_string(), &self.global(), can_gc)
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicy-createscripturl>
fn CreateScriptURL(
&self,
_: JSContext,
data: DOMString,
_: Vec<HandleValue>,
can_gc: CanGc,
) -> DomRoot<TrustedScriptURL> {
// TODO(36258): handle arguments
TrustedScriptURL::new(data.to_string(), &self.global(), can_gc)
}
}

View file

@ -0,0 +1,160 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
use std::cell::RefCell;
use dom_struct::dom_struct;
use js::rust::HandleValue;
use crate::dom::bindings::codegen::Bindings::TrustedTypePolicyFactoryBinding::{
TrustedTypePolicyFactoryMethods, TrustedTypePolicyOptions,
};
use crate::dom::bindings::conversions::root_from_object;
use crate::dom::bindings::error::{Error, Fallible};
use crate::dom::bindings::reflector::{DomGlobal, Reflector, reflect_dom_object};
use crate::dom::bindings::root::{DomRoot, MutNullableDom};
use crate::dom::bindings::str::DOMString;
use crate::dom::globalscope::GlobalScope;
use crate::dom::trustedhtml::TrustedHTML;
use crate::dom::trustedscript::TrustedScript;
use crate::dom::trustedscripturl::TrustedScriptURL;
use crate::dom::trustedtypepolicy::TrustedTypePolicy;
use crate::script_runtime::{CanGc, JSContext};
#[dom_struct]
pub struct TrustedTypePolicyFactory {
reflector_: Reflector,
default_policy: MutNullableDom<TrustedTypePolicy>,
policy_names: RefCell<Vec<String>>,
}
impl TrustedTypePolicyFactory {
fn new_inherited() -> Self {
Self {
reflector_: Reflector::new(),
default_policy: Default::default(),
policy_names: RefCell::new(vec![]),
}
}
#[cfg_attr(crown, allow(crown::unrooted_must_root))]
pub(crate) fn new(global: &GlobalScope, can_gc: CanGc) -> DomRoot<Self> {
reflect_dom_object(Box::new(Self::new_inherited()), global, can_gc)
}
/// <https://www.w3.org/TR/trusted-types/#create-trusted-type-policy-algorithm>
fn create_trusted_type_policy(
&self,
policy_name: String,
_options: &TrustedTypePolicyOptions,
global: &GlobalScope,
can_gc: CanGc,
) -> Fallible<DomRoot<TrustedTypePolicy>> {
// TODO(36258): implement proper CSP check
// Step 1: Let allowedByCSP be the result of executing Should Trusted Type policy creation be blocked by
// Content Security Policy? algorithm with global, policyName and factorys created policy names value.
let allowed_by_csp = true;
// Step 2: If allowedByCSP is "Blocked", throw a TypeError and abort further steps.
if !allowed_by_csp {
return Err(Error::Type("Not allowed by CSP".to_string()));
}
// Step 3: If policyName is default and the factorys default policy value is not null, throw a TypeError
// and abort further steps.
if policy_name == "default" && self.default_policy.get().is_some() {
return Err(Error::Type(
"Already set default policy for factory".to_string(),
));
}
// Step 4: Let policy be a new TrustedTypePolicy object.
// Step 5: Set policys name property value to policyName.
let policy = TrustedTypePolicy::new(policy_name.clone(), global, can_gc);
// Step 6: Set policys options value to «[ "createHTML" ->
// options["createHTML", "createScript" -> options["createScript",
// "createScriptURL" -> options["createScriptURL" ]».
// TODO(36258): implement step 6
// Step 7: If the policyName is default, set the factorys default policy value to policy.
if policy_name == "default" {
self.default_policy.set(Some(&policy))
}
// Step 8: Append policyName to factorys created policy names.
self.policy_names.borrow_mut().push(policy_name);
// Step 9: Return policy.
Ok(policy)
}
}
impl TrustedTypePolicyFactoryMethods<crate::DomTypeHolder> for TrustedTypePolicyFactory {
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicyfactory-createpolicy>
fn CreatePolicy(
&self,
policy_name: DOMString,
options: &TrustedTypePolicyOptions,
can_gc: CanGc,
) -> Fallible<DomRoot<TrustedTypePolicy>> {
self.create_trusted_type_policy(policy_name.to_string(), options, &self.global(), can_gc)
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicyfactory-ishtml>
#[allow(unsafe_code)]
fn IsHTML(&self, cx: JSContext, value: HandleValue) -> bool {
if !value.get().is_object() {
return false;
}
rooted!(in(*cx) let object = value.to_object());
unsafe { root_from_object::<TrustedHTML>(object.get(), *cx).is_ok() }
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicyfactory-isscript>
#[allow(unsafe_code)]
fn IsScript(&self, cx: JSContext, value: HandleValue) -> bool {
if !value.get().is_object() {
return false;
}
rooted!(in(*cx) let object = value.to_object());
unsafe { root_from_object::<TrustedScript>(object.get(), *cx).is_ok() }
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicyfactory-isscripturl>
#[allow(unsafe_code)]
fn IsScriptURL(&self, cx: JSContext, value: HandleValue) -> bool {
if !value.get().is_object() {
return false;
}
rooted!(in(*cx) let object = value.to_object());
unsafe { root_from_object::<TrustedScriptURL>(object.get(), *cx).is_ok() }
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicyfactory-emptyhtml>
fn EmptyHTML(&self, can_gc: CanGc) -> DomRoot<TrustedHTML> {
TrustedHTML::new("".to_string(), &self.global(), can_gc)
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicyfactory-emptyscript>
fn EmptyScript(&self, can_gc: CanGc) -> DomRoot<TrustedScript> {
TrustedScript::new("".to_string(), &self.global(), can_gc)
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicyfactory-getattributetype>
fn GetAttributeType(
&self,
_: DOMString,
_: DOMString,
_: Option<DOMString>,
_: Option<DOMString>,
) -> Option<DOMString> {
// TODO(36258): implement algorithm
Some(DOMString::from("".to_string()))
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicyfactory-getpropertytype>
fn GetPropertyType(
&self,
_: DOMString,
_: DOMString,
_: Option<DOMString>,
) -> Option<DOMString> {
// TODO(36258): implement algorithm
Some(DOMString::from("".to_string()))
}
/// <https://www.w3.org/TR/trusted-types/#dom-trustedtypepolicyfactory-defaultpolicy>
fn GetDefaultPolicy(&self) -> Option<DomRoot<TrustedTypePolicy>> {
self.default_policy.get()
}
}

View file

@ -145,6 +145,7 @@ use crate::dom::selection::Selection;
use crate::dom::storage::Storage;
#[cfg(feature = "bluetooth")]
use crate::dom::testrunner::TestRunner;
use crate::dom::trustedtypepolicyfactory::TrustedTypePolicyFactory;
use crate::dom::types::UIEvent;
use crate::dom::webglrenderingcontext::WebGLCommandSender;
#[cfg(feature = "webgpu")]
@ -247,6 +248,7 @@ pub(crate) struct Window {
session_storage: MutNullableDom<Storage>,
local_storage: MutNullableDom<Storage>,
status: DomRefCell<DOMString>,
trusted_types: MutNullableDom<TrustedTypePolicyFactory>,
/// For sending timeline markers. Will be ignored if
/// no devtools server
@ -1696,6 +1698,11 @@ impl WindowMethods<crate::DomTypeHolder> for Window {
self.as_global_scope()
.structured_clone(cx, value, options, retval)
}
fn TrustedTypes(&self, can_gc: CanGc) -> DomRoot<TrustedTypePolicyFactory> {
self.trusted_types
.or_init(|| TrustedTypePolicyFactory::new(self.as_global_scope(), can_gc))
}
}
impl Window {
@ -2922,6 +2929,7 @@ impl Window {
layout_marker: DomRefCell::new(Rc::new(Cell::new(true))),
current_event: DomRefCell::new(None),
theme: Cell::new(PrefersColorScheme::Light),
trusted_types: Default::default(),
});
unsafe {

View file

@ -52,6 +52,7 @@ use crate::dom::dedicatedworkerglobalscope::DedicatedWorkerGlobalScope;
use crate::dom::globalscope::GlobalScope;
use crate::dom::performance::Performance;
use crate::dom::promise::Promise;
use crate::dom::trustedtypepolicyfactory::TrustedTypePolicyFactory;
#[cfg(feature = "webgpu")]
use crate::dom::webgpu::identityhub::IdentityHub;
use crate::dom::window::{base64_atob, base64_btoa};
@ -122,6 +123,7 @@ pub(crate) struct WorkerGlobalScope {
#[no_trace]
navigation_start: CrossProcessInstant,
performance: MutNullableDom<Performance>,
trusted_types: MutNullableDom<TrustedTypePolicyFactory>,
/// A [`TimerScheduler`] used to schedule timers for this [`WorkerGlobalScope`].
/// Timers are handled in the service worker event loop.
@ -184,6 +186,7 @@ impl WorkerGlobalScope {
performance: Default::default(),
timer_scheduler: RefCell::default(),
insecure_requests_policy,
trusted_types: Default::default(),
}
}
@ -477,6 +480,14 @@ impl WorkerGlobalScopeMethods<crate::DomTypeHolder> for WorkerGlobalScope {
self.upcast::<GlobalScope>()
.structured_clone(cx, value, options, retval)
}
/// <https://www.w3.org/TR/trusted-types/#dom-windoworworkerglobalscope-trustedtypes>
fn TrustedTypes(&self, can_gc: CanGc) -> DomRoot<TrustedTypePolicyFactory> {
self.trusted_types.or_init(|| {
let global_scope = self.upcast::<GlobalScope>();
TrustedTypePolicyFactory::new(global_scope, can_gc)
})
}
}
impl WorkerGlobalScope {

View file

@ -575,6 +575,14 @@ DOMInterfaces = {
'canGc': ['ParentNode', 'PreviousNode', 'NextNode', 'FirstChild', 'LastChild', 'PreviousSibling', 'NextSibling']
},
'TrustedTypePolicy': {
'canGc': ['CreateHTML', 'CreateScript', 'CreateScriptURL']
},
'TrustedTypePolicyFactory': {
'canGc': ['CreatePolicy', 'EmptyHTML', 'EmptyScript']
},
'URL': {
'weakReferenceable': True,
'canGc': ['Parse', 'SearchParams'],
@ -590,7 +598,7 @@ DOMInterfaces = {
},
'Window': {
'canGc': ['Stop', 'Fetch', 'Scroll', 'Scroll_','ScrollBy', 'ScrollBy_', 'Stop', 'Fetch', 'Open', 'CreateImageBitmap'],
'canGc': ['Stop', 'Fetch', 'Scroll', 'Scroll_','ScrollBy', 'ScrollBy_', 'Stop', 'Fetch', 'Open', 'CreateImageBitmap', 'TrustedTypes'],
'inRealms': ['Fetch', 'GetOpener'],
'additionalTraits': ['crate::interfaces::WindowHelpers'],
},
@ -602,7 +610,7 @@ DOMInterfaces = {
'WorkerGlobalScope': {
'inRealms': ['Fetch'],
'canGc': ['Fetch', 'CreateImageBitmap', 'ImportScripts'],
'canGc': ['Fetch', 'CreateImageBitmap', 'ImportScripts', 'TrustedTypes'],
},
'Worklet': {

View file

@ -0,0 +1,13 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
/*
* The origin of this IDL file is
* https://www.w3.org/TR/trusted-types/#trusted-html
*/
[Exposed=(Window,Worker), Pref="dom_trusted_types_enabled"]
interface TrustedHTML {
stringifier;
DOMString toJSON();
};

View file

@ -0,0 +1,13 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
/*
* The origin of this IDL file is
* https://www.w3.org/TR/trusted-types/#trusted-script
*/
[Exposed=(Window,Worker), Pref="dom_trusted_types_enabled"]
interface TrustedScript {
stringifier;
DOMString toJSON();
};

View file

@ -0,0 +1,13 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
/*
* The origin of this IDL file is
* https://www.w3.org/TR/trusted-types/#trused-script-url
*/
[Exposed=(Window,Worker), Pref="dom_trusted_types_enabled"]
interface TrustedScriptURL {
stringifier;
DOMString toJSON();
};

View file

@ -0,0 +1,15 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
/*
* The origin of this IDL file is
* https://www.w3.org/TR/trusted-types/#trusted-type-policy
*/
[Exposed=(Window,Worker), Pref="dom_trusted_types_enabled"]
interface TrustedTypePolicy {
readonly attribute DOMString name;
TrustedHTML createHTML(DOMString input, any... arguments);
TrustedScript createScript(DOMString input, any... arguments);
TrustedScriptURL createScriptURL(DOMString input, any... arguments);
};

View file

@ -0,0 +1,38 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
/*
* The origin of this IDL file is
* https://www.w3.org/TR/trusted-types/#trusted-type-policy-factory
*/
[Exposed=(Window,Worker), Pref="dom_trusted_types_enabled"]
interface TrustedTypePolicyFactory {
[Throws]
TrustedTypePolicy createPolicy(
DOMString policyName, optional TrustedTypePolicyOptions policyOptions = {});
boolean isHTML(any value);
boolean isScript(any value);
boolean isScriptURL(any value);
readonly attribute TrustedHTML emptyHTML;
readonly attribute TrustedScript emptyScript;
DOMString? getAttributeType(
DOMString tagName,
DOMString attribute,
optional DOMString? elementNs = "",
optional DOMString? attrNs = "");
DOMString? getPropertyType(
DOMString tagName,
DOMString property,
optional DOMString? elementNs = "");
readonly attribute TrustedTypePolicy? defaultPolicy;
};
dictionary TrustedTypePolicyOptions {
CreateHTMLCallback createHTML;
CreateScriptCallback createScript;
CreateScriptURLCallback createScriptURL;
};
callback CreateHTMLCallback = DOMString? (DOMString input, any... arguments);
callback CreateScriptCallback = DOMString? (DOMString input, any... arguments);
callback CreateScriptURLCallback = USVString? (DOMString input, any... arguments);

View file

@ -45,5 +45,10 @@ partial interface mixin WindowOrWorkerGlobalScope {
readonly attribute boolean isSecureContext;
};
// https://www.w3.org/TR/trusted-types/#extensions-to-the-windoworworkerglobalscope-interface
partial interface mixin WindowOrWorkerGlobalScope {
readonly attribute TrustedTypePolicyFactory trustedTypes;
};
Window includes WindowOrWorkerGlobalScope;
WorkerGlobalScope includes WindowOrWorkerGlobalScope;

View file

@ -558,6 +558,7 @@ pub(crate) fn parse_command_line_arguments(args: Vec<String>) -> ArgumentParsing
"dom_resize_observer_enabled",
"dom_serviceworker_enabled",
"dom_svg_enabled",
"dom_trusted_types_enabled",
"dom_webgl2_enabled",
"dom_webgpu_enabled",
"dom_xpath_enabled",

View file

@ -80,6 +80,7 @@ WEBIDL_STANDARDS = [
b"//dev.w3.org/csswg",
b"//dev.w3.org/fxtf",
b"//dvcs.w3.org/hg",
b"//www.w3.org/TR/trusted-types/",
b"//dom.spec.whatwg.org",
b"//drafts.csswg.org",
b"//drafts.css-houdini.org",

View file

@ -7,6 +7,7 @@ prefs: [
"dom_resize_observer_enabled:true",
"dom_serviceworker_enabled:true",
"dom_testutils_enabled:true",
"dom_trusted_types_enabled:true",
"dom_urlpattern_enabled:true",
"dom_xpath_enabled:true",
"layout_grid_enabled:true",

View file

@ -1649,12 +1649,6 @@
[Element interface: calling setHTMLUnsafe((TrustedHTML or DOMString)) on document.createElement("noscript") with too few arguments must throw TypeError]
expected: FAIL
[Element interface: document.createElement("noscript") must inherit property "innerHTML" with the proper type]
expected: FAIL
[Element interface: document.createElement("noscript") must inherit property "outerHTML" with the proper type]
expected: FAIL
[ShadowRoot interface: operation setHTMLUnsafe((TrustedHTML or DOMString))]
expected: FAIL
@ -4562,12 +4556,6 @@
[DOMStringList interface: calling contains(DOMString) on location.ancestorOrigins with too few arguments must throw TypeError]
expected: FAIL
[Element interface: document.createElement("noscript") must inherit property "innerHTML" with the proper type]
expected: FAIL
[Element interface: document.createElement("noscript") must inherit property "outerHTML" with the proper type]
expected: FAIL
[TextTrack interface: attribute inBandMetadataTrackDispatchType]
expected: FAIL
@ -5825,12 +5813,6 @@
[OffscreenCanvasRenderingContext2D interface: attribute lang]
expected: FAIL
[Element interface: document.createElement("div") must inherit property "innerHTML" with the proper type]
expected: FAIL
[Element interface: document.createElement("div") must inherit property "outerHTML" with the proper type]
expected: FAIL
[idlharness.https.html?include=HTML.+]
[HTMLAllCollection interface: existence and properties of interface object]
@ -6313,9 +6295,6 @@
[HTMLIFrameElement interface: attribute marginWidth]
expected: FAIL
[HTMLIFrameElement interface: document.createElement("iframe") must inherit property "srcdoc" with the proper type]
expected: FAIL
[HTMLIFrameElement interface: document.createElement("iframe") must inherit property "allow" with the proper type]
expected: FAIL

View file

@ -1,2 +1,18 @@
[DedicatedWorker-block-eval-function-constructor.html]
expected: ERROR
[Blocked eval in DedicatedWorkerGlobalScope.]
expected: FAIL
[Blocked indirect eval in DedicatedWorkerGlobalScope.]
expected: FAIL
[Blocked Function constructor in DedicatedWorkerGlobalScope.]
expected: FAIL
[Blocked AsyncFunction constructor in DedicatedWorkerGlobalScope.]
expected: FAIL
[Blocked GeneratorFunction constructor in DedicatedWorkerGlobalScope.]
expected: FAIL
[Blocked AsyncGeneratorFunction constructor in DedicatedWorkerGlobalScope.]
expected: FAIL

View file

@ -1,2 +1,3 @@
[DedicatedWorker-constructor-from-DedicatedWorker.html]
expected: TIMEOUT
[Creating a Worker from a string should throw (dedicated worker scope)]
expected: FAIL

View file

@ -1,2 +1,6 @@
[DedicatedWorker-constructor.https.html]
expected: ERROR
[Block Worker creation via string]
expected: FAIL
[Create Worker via string with default policy.]
expected: FAIL

View file

@ -1,2 +1,18 @@
[DedicatedWorker-eval.html]
expected: ERROR
[eval(string) in dedicated worker]
expected: FAIL
[indirect eval(string) in dedicated worker]
expected: FAIL
[eval(TrustedScript) in dedicated worker]
expected: FAIL
[indirect eval(TrustedScript) in dedicated worker]
expected: FAIL
[eval(string) with default policy mutation in dedicated worker]
expected: FAIL
[indirect eval(string) with default policy mutation in dedicated worker]
expected: FAIL

View file

@ -1,2 +1,24 @@
[DedicatedWorker-importScripts.html]
expected: ERROR
[importScripts with TrustedScriptURL works in dedicated worker]
expected: FAIL
[importScripts with untrusted URLs throws in dedicated worker]
expected: FAIL
[null is not a trusted script URL throws in dedicated worker]
expected: FAIL
[importScripts with two URLs, both trusted, in dedicated worker]
expected: FAIL
[importScripts with two URLs, both strings, in dedicated worker]
expected: FAIL
[importScripts with two URLs, one trusted, in dedicated worker]
expected: FAIL
[importScripts with untrusted URLs and default policy works in dedicated worker]
expected: FAIL
[importScripts with one trusted and one untrusted URLs and default policy works in dedicated worker]
expected: FAIL

View file

@ -1,2 +1,7 @@
[DedicatedWorker-setTimeout-setInterval.html]
expected: ERROR
expected: TIMEOUT
[DedicatedWorkerGlobalScope.setTimeout assigned via default policy (successful Script transformation).]
expected: TIMEOUT
[DedicatedWorkerGlobalScope.setInterval assigned via default policy (successful Script transformation).]
expected: TIMEOUT

View file

@ -1,2 +1,18 @@
[Document-write-appending-line-feed.html]
expected: ERROR
[document.write() with TrustedHTML arguments only.]
expected: FAIL
[document.write() with String arguments only.]
expected: FAIL
[document.write() with TrustedHTML for all but one argument.]
expected: FAIL
[document.writeln() with TrustedHTML arguments only.]
expected: FAIL
[document.writeln() with String arguments only.]
expected: FAIL
[document.writeln() with TrustedHTML for all but one argument.]
expected: FAIL

View file

@ -1,4 +1,3 @@
[Document-write-exception-order.xhtml]
expected: ERROR
[`document.write(string)` throws TypeError]
expected: FAIL

View file

@ -4,15 +4,3 @@
[document.writeln with html assigned via policy (successful transformation).]
expected: FAIL
[document.write(TrustedHTML, TrustedHTML)]
expected: FAIL
[document.writeln(TrustedHTML, TrustedHTML)]
expected: FAIL
[document.write(TrustedHTML, String)]
expected: FAIL
[document.writeln(TrustedHTML, String)]
expected: FAIL

View file

@ -1,2 +1,10 @@
[Element-setAttribute-respects-Elements-node-documents-globals-CSP-after-adoption-from-non-TT-realm.html]
expected: ERROR
[setAttribute and setAttributeNode respect the element's node document's global's CSP;\n Element=iframe; Parent=div; Attribute=srcdoc]
expected: FAIL
[setAttribute and setAttributeNode respect the element's node document's global's CSP;\n Element=script; Parent=div; Attribute=src]
expected: FAIL
[setAttribute and setAttributeNode respect the element's node document's global's CSP;\n Element=script; Parent=svg; Attribute=href]
expected: FAIL

View file

@ -1,2 +1,21 @@
[Element-setAttribute-setAttributeNS-sinks.tentative.html]
expected: ERROR
[HTMLIFrameElement.setAttribute('srcdoc', plain_string)]
expected: FAIL
[HTMLIFrameElement.setAttributeNS(null, 'srcdoc', plain_string)]
expected: FAIL
[HTMLScriptElement.setAttribute('src', plain_string)]
expected: FAIL
[HTMLScriptElement.setAttributeNS(null, 'src', plain_string)]
expected: FAIL
[SVGScriptElement.setAttribute('href', plain_string)]
expected: FAIL
[SVGScriptElement.setAttributeNS(null, 'href', plain_string)]
expected: FAIL
[SVGScriptElement.setAttributeNS(NSURI_XLINK, 'href', plain_string)]
expected: FAIL

View file

@ -1,2 +1,6 @@
[GlobalEventHandlers-onclick.html]
expected: ERROR
[a.setAttribute('onclick') sets an unsuitable trusted type.]
expected: FAIL
[a.setAttribute('click') sets a test string.]
expected: FAIL

View file

@ -1,2 +1,73 @@
[HTMLElement-generic.html]
expected: ERROR
[TT enabled: script.src\n = String on a\n connected element\n ]
expected: FAIL
[TT enabled: script.src\n = String on a\n non-connected element\n ]
expected: FAIL
[TT enabled: div.innerHTML\n = String on a\n connected element\n ]
expected: FAIL
[TT enabled: div.innerHTML\n = String on a\n non-connected element\n ]
expected: FAIL
[TT enabled: iframe.srcdoc\n = String on a\n connected element\n ]
expected: FAIL
[TT enabled: iframe.srcdoc\n = String on a\n non-connected element\n ]
expected: FAIL
[TT enabled: script.text\n = String on a\n connected element\n ]
expected: FAIL
[TT enabled: script.text\n = String on a\n non-connected element\n ]
expected: FAIL
[TT enabled: script.innerText\n = String on a\n connected element\n ]
expected: FAIL
[TT enabled: script.innerText\n = String on a\n non-connected element\n ]
expected: FAIL
[TT enabled: script.textContent\n = String on a\n connected element\n ]
expected: FAIL
[TT enabled: script.textContent\n = String on a\n non-connected element\n ]
expected: FAIL
[TT enabled: script.src\n = String on a\n connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL
[TT enabled: script.src\n = String on a\n non-connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL
[TT enabled: div.innerHTML\n = String on a\n connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL
[TT enabled: div.innerHTML\n = String on a\n non-connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL
[TT enabled: iframe.srcdoc\n = String on a\n connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL
[TT enabled: iframe.srcdoc\n = String on a\n non-connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL
[TT enabled: script.text\n = String on a\n connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL
[TT enabled: script.text\n = String on a\n non-connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL
[TT enabled: script.innerText\n = String on a\n connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL
[TT enabled: script.innerText\n = String on a\n non-connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL
[TT enabled: script.textContent\n = String on a\n connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL
[TT enabled: script.textContent\n = String on a\n non-connected element\n after removing the "require-trusted-types-for 'script' directive]
expected: FAIL

View file

@ -1,2 +1,6 @@
[HTMLScriptElement-internal-slot.html]
expected: ERROR
[Test TT application when manipulating <script> elements during loading.]
expected: FAIL
[Setting .src to a plain string should throw an exception and not modify the script state, on an unconnected script element.]
expected: FAIL

View file

@ -1,2 +0,0 @@
[Node-multiple-arguments-tt-enforced.html]
expected: ERROR

View file

@ -1,2 +0,0 @@
[Node-multiple-arguments.html]
expected: ERROR

View file

@ -1,2 +1,4 @@
[SVGScriptElement-internal-slot.html]
expected: ERROR
expected: TIMEOUT
[Test TT application when manipulating <script> elements during loading.]
expected: TIMEOUT

View file

@ -1,2 +0,0 @@
[ServiceWorkerContainer-register-from-DedicatedWorker.https.html]
expected: ERROR

View file

@ -1,2 +1,6 @@
[ServiceWorkerContainer-register.https.html]
expected: ERROR
[Create ServiceWorker via ScriptTestUrl]
expected: FAIL
[Create ServiceWorker via string with default policy.]
expected: FAIL

View file

@ -1,2 +1,9 @@
[SharedWorker-constructor.https.html]
expected: ERROR
[Create SharedWorker via ScriptTestUrl]
expected: FAIL
[Block SharedWorker creation via string]
expected: FAIL
[Create SharedWorker via string with default policy.]
expected: FAIL

View file

@ -1,2 +0,0 @@
[TrustedType-AttributeNodes.html]
expected: ERROR

View file

@ -0,0 +1,3 @@
[TrustedTypePolicy-CSP-no-name.html]
[No name list given - policy creation fails.]
expected: FAIL

View file

@ -1,3 +0,0 @@
[TrustedTypePolicy-CSP-wildcard.html]
[CSP supports wildcards.]
expected: FAIL

View file

@ -1,10 +1,60 @@
[TrustedTypePolicy-createXXX.html]
expected: ERROR
[calling undefined callbacks throws]
expected: FAIL
[Attributes without type constraints will work as before.]
expected: FAIL
[trustedTypes.createPolicy(.., null) creates empty policy.]
expected: FAIL
[TestPolicyTrustedHTML1 (TrustedHTML: s => null)]
expected: FAIL
[TestPolicyTrustedHTML2 (TrustedHTML: s => "well, " + s)]
expected: FAIL
[TestPolicyTrustedHTML3 (TrustedHTML: s => { throw new Error() })]
expected: FAIL
[TestPolicyTrustedHTML5 (TrustedHTML: s => aGlobalVarForSideEffectTesting + s)]
expected: FAIL
[TestPolicyTrustedHTML6 (TrustedHTML: function() {\n [native code\]\n})]
expected: FAIL
[TestPolicyTrustedHTML7 (TrustedHTML: s => aGlobalFunction(s))]
expected: FAIL
[TestPolicyTrustedScript1 (TrustedScript: s => null)]
expected: FAIL
[TestPolicyTrustedScript2 (TrustedScript: s => "well, " + s)]
expected: FAIL
[TestPolicyTrustedScript3 (TrustedScript: s => { throw new Error() })]
expected: FAIL
[TestPolicyTrustedScript5 (TrustedScript: s => aGlobalVarForSideEffectTesting + s)]
expected: FAIL
[TestPolicyTrustedScript6 (TrustedScript: function() {\n [native code\]\n})]
expected: FAIL
[TestPolicyTrustedScript7 (TrustedScript: s => aGlobalFunction(s))]
expected: FAIL
[TestPolicyTrustedScriptURL1 (TrustedScriptURL: s => null)]
expected: FAIL
[TestPolicyTrustedScriptURL2 (TrustedScriptURL: s => s + "#duck")]
expected: FAIL
[TestPolicyTrustedScriptURL3 (TrustedScriptURL: s => { throw new Error() })]
expected: FAIL
[TestPolicyTrustedScriptURL4 (TrustedScriptURL: s => s + "#" + aGlobalVarForSideEffectTesting)]
expected: FAIL
[TestPolicyTrustedScriptURL5 (TrustedScriptURL: function() {\n [native code\]\n})]
expected: FAIL
[TestPolicyTrustedScriptURL6 (TrustedScriptURL: s => anotherGlobalFunction(s))]
expected: FAIL

View file

@ -1,18 +0,0 @@
[TrustedTypePolicyFactory-constants.html]
[trustedTypes.emptyHTML returns the intended value.]
expected: FAIL
[trustedTypes.emptyHTML cannot be redefined.]
expected: FAIL
[trustedTypes.emptyHTML cannot be redefined via defineProperty.]
expected: FAIL
[trustedTypes.emptyScript returns the intended value.]
expected: FAIL
[trustedTypes.emptyScript cannot be redefined.]
expected: FAIL
[trustedTypes.emptyScript cannot be redefined via defineProperty.]
expected: FAIL

View file

@ -1,7 +1,4 @@
[TrustedTypePolicyFactory-createPolicy-createXYZTests.html]
[html = identity function]
expected: FAIL
[html = null]
expected: FAIL
@ -26,9 +23,6 @@
[createHTML defined - calling undefined callbacks throws]
expected: FAIL
[script = identity function]
expected: FAIL
[script = null]
expected: FAIL
@ -53,9 +47,6 @@
[createScript defined - calling undefined callbacks throws]
expected: FAIL
[script_url = identity function]
expected: FAIL
[script_url = null]
expected: FAIL

View file

@ -0,0 +1,3 @@
[TrustedTypePolicyFactory-createPolicy-cspTests-noNamesGiven.html]
[No name list given - policy creation throws]
expected: FAIL

View file

@ -1,3 +1,3 @@
[TrustedTypePolicyFactory-createPolicy-cspTests-none-none-name.html]
[Can create policy with name 'SomeName']
[Cannot create policy with name 'default' - policy creation throws]
expected: FAIL

View file

@ -0,0 +1,6 @@
[TrustedTypePolicyFactory-createPolicy-cspTests-none-none.html]
[Cannot create policy with name 'SomeName' - policy creation throws]
expected: FAIL
[Cannot create policy with name 'default' - policy creation throws]
expected: FAIL

View file

@ -1,9 +0,0 @@
[TrustedTypePolicyFactory-createPolicy-cspTests-none-skip.html]
[Can create policy with name 'SomeName']
expected: FAIL
[Can create a second policy with name 'SomeName']
expected: FAIL
[Can create policy with name 'default']
expected: FAIL

View file

@ -1,3 +0,0 @@
[TrustedTypePolicyFactory-createPolicy-cspTests-wildcard.html]
[Wildcard given - policy creation works]
expected: FAIL

View file

@ -1,11 +1,5 @@
[TrustedTypePolicyFactory-createPolicy-cspTests.html]
expected: TIMEOUT
[Allowed-name policy creation works.]
expected: FAIL
[Another allowed-name policy creation works.]
expected: FAIL
[Non-allowed name policy creation throws.]
expected: TIMEOUT

View file

@ -1,3 +0,0 @@
[TrustedTypePolicyFactory-createPolicy-unenforced.html]
[Duplicate policy names should be tolerated (unless in enforcing mode)]
expected: FAIL

View file

@ -1,9 +0,0 @@
[TrustedTypePolicyFactory-defaultPolicy.html]
[defaultPolicy with no default created is not an error]
expected: FAIL
[defaultPolicy returns the correct default policy]
expected: FAIL
[defaultPolicy is a read-only property]
expected: FAIL

View file

@ -1,2 +1,69 @@
[TrustedTypePolicyFactory-getAttributeType.html]
expected: ERROR
[getAttributeType(\n "DIV",\n "onclick",\n "http://www.w3.org/1999/xhtml",\n "null") == "TrustedScript"]
expected: FAIL
[getAttributeType(\n "g",\n "ondblclick",\n "http://www.w3.org/2000/svg",\n "null") == "TrustedScript"]
expected: FAIL
[getAttributeType(\n "mrow",\n "onmousedown",\n "http://www.w3.org/1998/Math/MathML",\n "null") == "TrustedScript"]
expected: FAIL
[getAttributeType(\n "IFRAME",\n "srcdoc",\n "http://www.w3.org/1999/xhtml",\n "null") == "TrustedHTML"]
expected: FAIL
[getAttributeType(\n "SCRIPT",\n "src",\n "http://www.w3.org/1999/xhtml",\n "null") == "TrustedScriptURL"]
expected: FAIL
[getAttributeType(\n "script",\n "href",\n "http://www.w3.org/2000/svg",\n "null") == "TrustedScriptURL"]
expected: FAIL
[getAttributeType(\n "script",\n "href",\n "http://www.w3.org/2000/svg",\n "http://www.w3.org/1999/xlink") == "TrustedScriptURL"]
expected: FAIL
[getAttributeType(\n "foo",\n "onmouseup",\n "https://example.com/namespace",\n "null") == "null"]
expected: FAIL
[getAttributeType(\n "DIV",\n "onclick",\n "http://www.w3.org/1999/xhtml",\n "https://example.com/namespace") == "null"]
expected: FAIL
[getAttributeType(\n "DIV",\n "ondoesnotexist",\n "http://www.w3.org/1999/xhtml",\n "null") == "null"]
expected: FAIL
[getAttributeType(\n "DIV",\n "data-onclick",\n "http://www.w3.org/1999/xhtml",\n "null") == "null"]
expected: FAIL
[getAttributeType(\n "DIV",\n "srcdoc",\n "http://www.w3.org/1999/xhtml",\n "null") == "null"]
expected: FAIL
[getAttributeType(\n "iframe",\n "srcdoc",\n "https://example.com/namespace",\n "null") == "null"]
expected: FAIL
[getAttributeType(\n "IFRAME",\n "srcdoc",\n "http://www.w3.org/1999/xhtml",\n "https://example.com/namespace") == "null"]
expected: FAIL
[getAttributeType(\n "IFRAME",\n "data-srcdoc",\n "http://www.w3.org/1999/xhtml",\n "null") == "null"]
expected: FAIL
[getAttributeType(\n "DIV",\n "src",\n "http://www.w3.org/1999/xhtml",\n "null") == "null"]
expected: FAIL
[getAttributeType(\n "script",\n "src",\n "https://example.com/namespace",\n "null") == "null"]
expected: FAIL
[getAttributeType(\n "SCRIPT",\n "src",\n "http://www.w3.org/1999/xhtml",\n "https://example.com/namespace") == "null"]
expected: FAIL
[getAttributeType(\n "SCRIPT",\n "data-src",\n "http://www.w3.org/1999/xhtml",\n "null") == "null"]
expected: FAIL
[getAttributeType(\n "g",\n "href",\n "http://www.w3.org/2000/svg",\n "null") == "null"]
expected: FAIL
[getAttributeType(\n "SCRIPT",\n "href",\n "http://www.w3.org/1999/xhtml",\n "null") == "null"]
expected: FAIL
[getAttributeType(\n "script",\n "href",\n "http://www.w3.org/2000/svg",\n "https://example.com/namespace") == "null"]
expected: FAIL
[getAttributeType(\n "script",\n "src",\n "http://www.w3.org/2000/svg",\n "null") == "null"]
expected: FAIL

View file

@ -11,60 +11,24 @@
[getAttributeType tests adapted from w3c/trusted-types polyfill]
expected: FAIL
[iframe[srcDoc\] is defined]
expected: FAIL
[iframe.srcDoc is maybe defined]
expected: FAIL
[IFRAME[srcDoc\] is defined]
expected: FAIL
[IFRAME.srcDoc is maybe defined]
expected: FAIL
[iFrAmE[srcDoc\] is defined]
expected: FAIL
[iFrAmE.srcDoc is maybe defined]
expected: FAIL
[iframe[SRCDOC\] is defined]
expected: FAIL
[iframe.SRCDOC is maybe defined]
expected: FAIL
[IFRAME[SRCDOC\] is defined]
expected: FAIL
[IFRAME.SRCDOC is maybe defined]
expected: FAIL
[iFrAmE[SRCDOC\] is defined]
expected: FAIL
[iFrAmE.SRCDOC is maybe defined]
expected: FAIL
[iframe[srcdoc\] is defined]
expected: FAIL
[iframe.srcdoc is maybe defined]
expected: FAIL
[IFRAME[srcdoc\] is defined]
expected: FAIL
[IFRAME.srcdoc is maybe defined]
expected: FAIL
[iFrAmE[srcdoc\] is defined]
expected: FAIL
[iFrAmE.srcdoc is maybe defined]
expected: FAIL
[getPropertyType vs getAttributeType for event handler.]
expected: FAIL

View file

@ -1,12 +0,0 @@
[TrustedTypePolicyFactory-isXXX.html]
[TrustedTypePolicyFactory.isHTML requires the object to be created via policy.]
expected: FAIL
[TrustedTypePolicyFactory.isScript requires the object to be created via policy.]
expected: FAIL
[TrustedTypePolicyFactory.isScriptURL requires the object to be created via policy.]
expected: FAIL
[TrustedTypePolicyFactory.isXXX should accept anything without throwing.]
expected: FAIL

View file

@ -1,2 +0,0 @@
[TrustedTypePolicyFactory-metadata.tentative.html]
expected: ERROR

View file

@ -1,6 +0,0 @@
[Window-TrustedTypes.html]
[factory = window.trustedTypes]
expected: FAIL
[factory construction fails]
expected: FAIL

View file

@ -1,2 +1,18 @@
[Window-block-eval-function-constructor.html]
expected: ERROR
[Blocked eval in Window.]
expected: FAIL
[Blocked indirect eval in Window.]
expected: FAIL
[Blocked Function constructor in Window.]
expected: FAIL
[Blocked AsyncFunction constructor in Window.]
expected: FAIL
[Blocked GeneratorFunction constructor in Window.]
expected: FAIL
[Blocked AsyncGeneratorFunction constructor in Window.]
expected: FAIL

View file

@ -1,7 +1,7 @@
[Window-setTimeout-setInterval.html]
expected: ERROR
[Window.setTimeout assigned via policy (successful Script transformation).]
expected: FAIL
expected: TIMEOUT
[Window.setTimeout assigned via default policy (successful Script transformation).]
expected: TIMEOUT
[Window.setInterval assigned via policy (successful Script transformation).]
expected: FAIL
[Window.setInterval assigned via default policy (successful Script transformation).]
expected: TIMEOUT

View file

@ -1,2 +1,15 @@
[block-Document-execCommand.html]
expected: ERROR
[Document.execCommand("insertHTML") works with a TrustedHTML argument.]
expected: FAIL
[Document.execCommand("paste") works as usual."]
expected: FAIL
[Document.execCommand("paste") works with a TrustedHTML argument.]
expected: FAIL
[Document.execCommand("insertHTML") works as usual with a default policy.]
expected: FAIL
[Document.execCommand("paste") works as usual with a default policy.]
expected: FAIL

View file

@ -1,2 +1,12 @@
[block-string-assignment-to-DedicatedWorker-setTimeout-setInterval.html]
expected: ERROR
[`DedicatedWorkerGlobalScope.setTimeout(string)` throws.]
expected: FAIL
[`DedicatedWorkerGlobalScope.setTimeout(null)` throws.]
expected: FAIL
[`DedicatedWorkerGlobalScope.setInterval(string)` throws.]
expected: FAIL
[`DedicatedWorkerGlobalScope.setInterval(null)` throws.]
expected: FAIL

View file

@ -1,2 +1,48 @@
[block-string-assignment-to-Document-write.html]
expected: ERROR
[document.write with html assigned via policy (successful URL transformation).]
expected: FAIL
[document.writeln with html assigned via policy (successful URL transformation).]
expected: FAIL
[`document.write(string)` throws]
expected: FAIL
[`document.write(string, string)` throws]
expected: FAIL
[`document.write(string, TrustedHTML)` throws]
expected: FAIL
[`document.writeln(string)` throws]
expected: FAIL
[`document.writeln(string, string)` throws]
expected: FAIL
[`document.writeln(string, TrustedHTML)` throws]
expected: FAIL
[`document.write(null)` throws]
expected: FAIL
[`document.writeln(null)` throws]
expected: FAIL
[`document.write(string)` observes default policy]
expected: FAIL
[`document.write(string, string)` observes default policy]
expected: FAIL
[`document.write(string, TrustedHTML)` observes default policy]
expected: FAIL
[`document.writeln(string)` observes default policy]
expected: FAIL
[`document.writeln(string, string)` observes default policy]
expected: FAIL
[`document.writeln(string, TrustedHTML)` observes default policy]
expected: FAIL

View file

@ -2,9 +2,6 @@
[outerHTML with html assigned via policy (successful HTML transformation).]
expected: FAIL
[`outerHTML = TrustedHTML` throws NoModificationAllowedError when parent is a document.]
expected: FAIL
[`outerHTML = string` throws.]
expected: FAIL

View file

@ -1,2 +1,36 @@
[block-string-assignment-to-Element-setAttribute.html]
expected: ERROR
[script.src accepts only TrustedScriptURL]
expected: FAIL
[iframe.srcdoc accepts only TrustedHTML]
expected: FAIL
[div.onclick accepts only TrustedScript]
expected: FAIL
[`Script.prototype.setAttribute.SrC = string` throws.]
expected: FAIL
[script.src accepts string and null after default policy was created.]
expected: FAIL
[script.src's mutationobservers receive the default policy's value.]
expected: FAIL
[iframe.srcdoc's mutationobservers receive the default policy's value.]
expected: FAIL
[div.onclick's mutationobservers receive the default policy's value.]
expected: FAIL
[iframe.srcdoc accepts string and null after default policy was created.]
expected: FAIL
[div.onclick accepts string and null after default policy was created.]
expected: FAIL
[a.rel accepts a Trusted Type]
expected: FAIL
[`script.src = setAttributeNode(embed.src)` with string works.]
expected: FAIL

View file

@ -1,5 +1,4 @@
[block-string-assignment-to-Element-setAttributeNS.html]
expected: ERROR
[Element.setAttributeNS assigned via policy (successful HTML transformation)]
expected: FAIL
@ -8,3 +7,6 @@
[Element.setAttributeNS assigned via policy (successful ScriptURL transformation)]
expected: FAIL
[Blocking non-TrustedScriptURL assignment to <svg:script xlink:href=...> works]
expected: FAIL

View file

@ -1,5 +1,4 @@
[block-string-assignment-to-HTMLElement-generic.html]
expected: ERROR
[script.src accepts only TrustedScriptURL]
expected: FAIL
@ -8,3 +7,21 @@
[iframe.srcdoc accepts only TrustedHTML]
expected: FAIL
[script.src accepts string and null after default policy was created]
expected: FAIL
[div.innerHTML accepts string and null after default policy was created]
expected: FAIL
[iframe.srcdoc accepts string and null after default policy was created]
expected: FAIL
[script.text accepts only TrustedScript]
expected: FAIL
[script.innerText accepts only TrustedScript]
expected: FAIL
[script.textContent accepts only TrustedScript]
expected: FAIL

View file

@ -1,2 +1,12 @@
[block-string-assignment-to-ShadowRoot-innerHTML.html]
expected: ERROR
[shadowRoot.innerHTML = html assigned via policy (successful HTML transformation).]
expected: FAIL
[`shadowRoot.innerHTML = string` throws.]
expected: FAIL
[`shadowRoot.innerHTML = null` throws.]
expected: FAIL
[`shadowRoot.innerHTML = string` assigned via default policy (successful HTML transformation).]
expected: FAIL

View file

@ -1,2 +1,9 @@
[block-string-assignment-to-ShadowRoot-setHTMLUnsafe.html]
expected: ERROR
[shadowRoot.setHTMLUnsafe(html) assigned via policy (successful HTML transformation).]
expected: FAIL
[`shadowRoot.setHTMLUnsafe(string)` assigned via default policy (successful HTML transformation).]
expected: FAIL
[`shadowRoot.setHTMLUnsafe(string)` assigned via default policy does not throw]
expected: FAIL

View file

@ -1,17 +1,11 @@
[block-string-assignment-to-Window-setTimeout-setInterval.html]
expected: ERROR
[Window.setTimeout assigned via policy (successful Script transformation).]
expected: FAIL
[`Window.setTimeout(string)` throws.]
expected: FAIL
[`Window.setTimeout(null)` throws.]
expected: FAIL
[Window.setInterval assigned via policy (successful Script transformation).]
expected: FAIL
[`Window.setInterval(string)` throws.]
expected: FAIL

View file

@ -1,2 +1,21 @@
[block-string-assignment-to-text-and-url-sinks.html]
expected: ERROR
[Setting HTMLDivElement.innerHTML to a plain string]
expected: FAIL
[Setting HTMLScriptElement.innerHTML to a plain string]
expected: FAIL
[Setting SVGScriptElement.innerHTML to a plain string]
expected: FAIL
[Setting HTMLScriptElement.innerText to a plain string]
expected: FAIL
[Setting HTMLScriptElement.textContent to a plain string]
expected: FAIL
[Setting HTMLScriptElement.text to a plain string]
expected: FAIL
[Setting HTMLScriptElement.src to a plain string]
expected: FAIL

View file

@ -1,2 +1,22 @@
[block-text-node-insertion-into-script-element.html]
expected: ERROR
expected: TIMEOUT
[Regression test: Bypass via insertAdjacentText, initial comment.]
expected: FAIL
[Regression test: Bypass via insertAdjacentText, textContent.]
expected: FAIL
[Spot tests around script + innerHTML interaction.]
expected: TIMEOUT
[Prep for subsequent tests: Create default policy.]
expected: NOTRUN
[Test that default policy applies.]
expected: NOTRUN
[Test a failing default policy.]
expected: NOTRUN
[Spot tests around script + innerHTML interaction with default policy.]
expected: NOTRUN

View file

@ -1,2 +1,16 @@
[block-text-node-insertion-into-svg-script-element.html]
expected: ERROR
expected: TIMEOUT
[Spot tests around script + innerHTML interaction.]
expected: TIMEOUT
[Prep for subsequent tests: Create default policy.]
expected: NOTRUN
[Test that default policy applies. svg:script]
expected: NOTRUN
[Test a failing default policy. svg:script]
expected: NOTRUN
[Spot tests around script + innerHTML interaction with default policy.]
expected: NOTRUN

View file

@ -1,2 +1,3 @@
[csp-block-eval.html]
expected: ERROR
[eval with TrustedScript throws (script-src blocks).]
expected: FAIL

View file

@ -1,2 +0,0 @@
[default-policy-callback-arguments.html]
expected: ERROR

View file

@ -1,4 +1,31 @@
[default-policy-report-only.html]
expected: ERROR
expected: TIMEOUT
[Count SecurityPolicyViolation events.]
expected: TIMEOUT
[script.src default]
expected: FAIL
[script.src throw]
expected: FAIL
[script.src typeerror]
expected: FAIL
[div.innerHTML default]
expected: FAIL
[div.innerHTML throw]
expected: FAIL
[div.innerHTML typeerror]
expected: FAIL
[script.text default]
expected: FAIL
[script.text throw]
expected: FAIL
[script.text typeerror]
expected: FAIL

View file

@ -1,5 +1,5 @@
[default-policy.html]
expected: ERROR
expected: TIMEOUT
[Count SecurityPolicyViolation events.]
expected: TIMEOUT
@ -11,3 +11,48 @@
[script.text no default policy]
expected: FAIL
[script.src default]
expected: FAIL
[script.src null]
expected: FAIL
[script.src throw]
expected: FAIL
[script.src undefined]
expected: FAIL
[script.src typeerror]
expected: FAIL
[div.innerHTML default]
expected: FAIL
[div.innerHTML null]
expected: FAIL
[div.innerHTML throw]
expected: FAIL
[div.innerHTML undefined]
expected: FAIL
[div.innerHTML typeerror]
expected: FAIL
[script.text default]
expected: FAIL
[script.text null]
expected: FAIL
[script.text throw]
expected: FAIL
[script.text undefined]
expected: FAIL
[script.text typeerror]
expected: FAIL

View file

@ -1,4 +1,4 @@
[empty-default-policy-report-only.html]
expected: ERROR
expected: TIMEOUT
[Count SecurityPolicyViolation events.]
expected: TIMEOUT

View file

@ -1,4 +1,13 @@
[empty-default-policy.html]
expected: ERROR
expected: TIMEOUT
[Count SecurityPolicyViolation events.]
expected: TIMEOUT
[script.src default]
expected: FAIL
[div.innerHTML default]
expected: FAIL
[script.text default]
expected: FAIL

View file

@ -1,2 +1,6 @@
[eval-csp-no-tt.html]
expected: ERROR
[eval of TrustedScript works.]
expected: FAIL
[indirect eval of TrustedScript works.]
expected: FAIL

View file

@ -1,2 +1,18 @@
[eval-csp-tt-default-policy-mutate.html]
expected: ERROR
[eval of string where default policy mutates value throws.]
expected: FAIL
[indirect eval of string where default policy mutates value throws.]
expected: FAIL
[Function constructor with string where default policy mutates value throws.]
expected: FAIL
[AsyncFunction constructor with string where default policy mutates value throws.]
expected: FAIL
[GeneratorFunction constructor with string where default policy mutates value throws.]
expected: FAIL
[AsyncGeneratorFunction constructor with string where default policy mutates value throws.]
expected: FAIL

View file

@ -1,2 +1,6 @@
[eval-csp-tt-default-policy.html]
expected: ERROR
[eval of TrustedScript works.]
expected: FAIL
[indirect eval of TrustedScript works.]
expected: FAIL

View file

@ -1,2 +1,30 @@
[eval-csp-tt-no-default-policy.html]
expected: ERROR
[eval of TrustedScript works.]
expected: FAIL
[indirect eval of TrustedScript works.]
expected: FAIL
[eval of string fails.]
expected: FAIL
[indirect eval of string fails.]
expected: FAIL
[Function constructor of string fails.]
expected: FAIL
[Function constructor of all strings fails.]
expected: FAIL
[Function constructor of string and TrustedScript fails.]
expected: FAIL
[AsyncFunction constructor of string fails.]
expected: FAIL
[GeneratorFunction constructor of string fails.]
expected: FAIL
[AsyncGeneratorFunction constructor of string fails.]
expected: FAIL

View file

@ -1,2 +1,24 @@
[eval-function-constructor-untrusted-arguments-and-applying-default-policy.html]
expected: ERROR
[plain string at index 0 (default policy modifying the function text).]
expected: FAIL
[plain string at index 1 (default policy modifying the function text).]
expected: FAIL
[plain string at index 2 (default policy modifying the function text).]
expected: FAIL
[plain string at index 3 (default policy modifying the function text).]
expected: FAIL
[TrustedScript with forged toString() at index 0 (default policy modifying the function text).]
expected: FAIL
[TrustedScript with forged toString() at index 1 (default policy modifying the function text).]
expected: FAIL
[TrustedScript with forged toString() at index 2 (default policy modifying the function text).]
expected: FAIL
[TrustedScript with forged toString() at index 3 (default policy modifying the function text).]
expected: FAIL

View file

@ -1,2 +1,6 @@
[eval-function-constructor-untrusted-arguments-and-default-policy-throwing.html]
expected: ERROR
[EvalError thrown if the callback of the default policy throws an error (eval).]
expected: FAIL
[EvalError thrown if the callback of the default policy throws an error (new Function).]
expected: FAIL

View file

@ -1,2 +1,192 @@
[eval-function-constructor.html]
expected: ERROR
[Function constructor with mixed plain and trusted strings, mask #0]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #0]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #0]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #0]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #1]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #1]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #1]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #1]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #2]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #2]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #2]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #2]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #3]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #3]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #3]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #3]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #4]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #4]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #4]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #4]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #5]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #5]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #5]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #5]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #6]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #6]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #6]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #6]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #7]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #7]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #7]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #7]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #8]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #8]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #8]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #8]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #9]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #9]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #9]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #9]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #10]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #10]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #10]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #10]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #11]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #11]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #11]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #11]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #12]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #12]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #12]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #12]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #13]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #13]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #13]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #13]
expected: FAIL
[Function constructor with mixed plain and trusted strings, mask #14]
expected: FAIL
[AsyncFunction constructor with mixed plain and trusted strings, mask #14]
expected: FAIL
[GeneratorFunction constructor with mixed plain and trusted strings, mask #14]
expected: FAIL
[AsyncGeneratorFunction constructor with mixed plain and trusted strings, mask #14]
expected: FAIL
[Function constructor with trusted strings, and a forged toString() for the one at index 0]
expected: FAIL
[Function constructor with trusted strings, and a forged toString() for the one at index 1]
expected: FAIL
[Function constructor with trusted strings, and a forged toString() for the one at index 2]
expected: FAIL
[Function constructor with trusted strings, and a forged toString() for the one at index 3]
expected: FAIL

View file

@ -1,2 +1,6 @@
[eval-no-csp-no-tt-default-policy.html]
expected: ERROR
[eval of TrustedScript works.]
expected: FAIL
[indirect eval of TrustedScript works.]
expected: FAIL

View file

@ -1,2 +1,6 @@
[eval-no-csp-no-tt.html]
expected: ERROR
[eval of TrustedScript works.]
expected: FAIL
[indirect eval of TrustedScript works.]
expected: FAIL

View file

@ -1,2 +1,18 @@
[eval-with-permissive-csp.html]
expected: ERROR
[eval with plain string with Trusted Types and permissive CSP throws (no type).]
expected: FAIL
[indirect eval with plain string with Trusted Types and permissive CSP throws (no type).]
expected: FAIL
[Function constructor with plain string with Trusted Types and permissive CSP throws (no type).]
expected: FAIL
[eval with TrustedScript and permissive CSP works.]
expected: FAIL
[indirect eval with TrustedScript and permissive CSP works.]
expected: FAIL
[new Function with TrustedScript and permissive CSP works.]
expected: FAIL

View file

@ -1,2 +0,0 @@
[get-trusted-types-compliant-attribute-value.html]
expected: ERROR

View file

@ -1,264 +0,0 @@
[idlharness.window.html]
[TrustedHTML interface: existence and properties of interface object]
expected: FAIL
[TrustedHTML interface object length]
expected: FAIL
[TrustedHTML interface object name]
expected: FAIL
[TrustedHTML interface: existence and properties of interface prototype object]
expected: FAIL
[TrustedHTML interface: existence and properties of interface prototype object's "constructor" property]
expected: FAIL
[TrustedHTML interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
[TrustedHTML interface: stringifier]
expected: FAIL
[TrustedHTML interface: operation toJSON()]
expected: FAIL
[TrustedHTML must be primary interface of window.trustedTypes.createPolicy("SomeName1", { createHTML: s => s }).createHTML("A string")]
expected: FAIL
[Stringification of window.trustedTypes.createPolicy("SomeName1", { createHTML: s => s }).createHTML("A string")]
expected: FAIL
[TrustedHTML interface: window.trustedTypes.createPolicy("SomeName1", { createHTML: s => s }).createHTML("A string") must inherit property "toJSON()" with the proper type]
expected: FAIL
[TrustedHTML interface: toJSON operation on window.trustedTypes.createPolicy("SomeName1", { createHTML: s => s }).createHTML("A string")]
expected: FAIL
[TrustedScript interface: existence and properties of interface object]
expected: FAIL
[TrustedScript interface object length]
expected: FAIL
[TrustedScript interface object name]
expected: FAIL
[TrustedScript interface: existence and properties of interface prototype object]
expected: FAIL
[TrustedScript interface: existence and properties of interface prototype object's "constructor" property]
expected: FAIL
[TrustedScript interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
[TrustedScript interface: stringifier]
expected: FAIL
[TrustedScript interface: operation toJSON()]
expected: FAIL
[TrustedScript must be primary interface of window.trustedTypes.createPolicy("SomeName2", { createScript: s => s }).createScript("A string")]
expected: FAIL
[Stringification of window.trustedTypes.createPolicy("SomeName2", { createScript: s => s }).createScript("A string")]
expected: FAIL
[TrustedScript interface: window.trustedTypes.createPolicy("SomeName2", { createScript: s => s }).createScript("A string") must inherit property "toJSON()" with the proper type]
expected: FAIL
[TrustedScript interface: toJSON operation on window.trustedTypes.createPolicy("SomeName2", { createScript: s => s }).createScript("A string")]
expected: FAIL
[TrustedScriptURL interface: existence and properties of interface object]
expected: FAIL
[TrustedScriptURL interface object length]
expected: FAIL
[TrustedScriptURL interface object name]
expected: FAIL
[TrustedScriptURL interface: existence and properties of interface prototype object]
expected: FAIL
[TrustedScriptURL interface: existence and properties of interface prototype object's "constructor" property]
expected: FAIL
[TrustedScriptURL interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
[TrustedScriptURL interface: stringifier]
expected: FAIL
[TrustedScriptURL interface: operation toJSON()]
expected: FAIL
[TrustedScriptURL must be primary interface of window.trustedTypes.createPolicy("SomeName3", { createScriptURL: s => s }).createScriptURL("A string")]
expected: FAIL
[Stringification of window.trustedTypes.createPolicy("SomeName3", { createScriptURL: s => s }).createScriptURL("A string")]
expected: FAIL
[TrustedScriptURL interface: window.trustedTypes.createPolicy("SomeName3", { createScriptURL: s => s }).createScriptURL("A string") must inherit property "toJSON()" with the proper type]
expected: FAIL
[TrustedScriptURL interface: toJSON operation on window.trustedTypes.createPolicy("SomeName3", { createScriptURL: s => s }).createScriptURL("A string")]
expected: FAIL
[TrustedTypePolicyFactory interface: existence and properties of interface object]
expected: FAIL
[TrustedTypePolicyFactory interface object length]
expected: FAIL
[TrustedTypePolicyFactory interface object name]
expected: FAIL
[TrustedTypePolicyFactory interface: existence and properties of interface prototype object]
expected: FAIL
[TrustedTypePolicyFactory interface: existence and properties of interface prototype object's "constructor" property]
expected: FAIL
[TrustedTypePolicyFactory interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
[TrustedTypePolicyFactory interface: operation createPolicy(DOMString, optional TrustedTypePolicyOptions)]
expected: FAIL
[TrustedTypePolicyFactory interface: operation isHTML(any)]
expected: FAIL
[TrustedTypePolicyFactory interface: operation isScript(any)]
expected: FAIL
[TrustedTypePolicyFactory interface: operation isScriptURL(any)]
expected: FAIL
[TrustedTypePolicyFactory interface: attribute emptyHTML]
expected: FAIL
[TrustedTypePolicyFactory interface: attribute emptyScript]
expected: FAIL
[TrustedTypePolicyFactory interface: operation getAttributeType(DOMString, DOMString, optional DOMString?, optional DOMString?)]
expected: FAIL
[TrustedTypePolicyFactory interface: operation getPropertyType(DOMString, DOMString, optional DOMString?)]
expected: FAIL
[TrustedTypePolicyFactory interface: attribute defaultPolicy]
expected: FAIL
[TrustedTypePolicyFactory must be primary interface of window.trustedTypes]
expected: FAIL
[Stringification of window.trustedTypes]
expected: FAIL
[TrustedTypePolicyFactory interface: window.trustedTypes must inherit property "createPolicy(DOMString, optional TrustedTypePolicyOptions)" with the proper type]
expected: FAIL
[TrustedTypePolicyFactory interface: calling createPolicy(DOMString, optional TrustedTypePolicyOptions) on window.trustedTypes with too few arguments must throw TypeError]
expected: FAIL
[TrustedTypePolicyFactory interface: window.trustedTypes must inherit property "isHTML(any)" with the proper type]
expected: FAIL
[TrustedTypePolicyFactory interface: calling isHTML(any) on window.trustedTypes with too few arguments must throw TypeError]
expected: FAIL
[TrustedTypePolicyFactory interface: window.trustedTypes must inherit property "isScript(any)" with the proper type]
expected: FAIL
[TrustedTypePolicyFactory interface: calling isScript(any) on window.trustedTypes with too few arguments must throw TypeError]
expected: FAIL
[TrustedTypePolicyFactory interface: window.trustedTypes must inherit property "isScriptURL(any)" with the proper type]
expected: FAIL
[TrustedTypePolicyFactory interface: calling isScriptURL(any) on window.trustedTypes with too few arguments must throw TypeError]
expected: FAIL
[TrustedTypePolicyFactory interface: window.trustedTypes must inherit property "emptyHTML" with the proper type]
expected: FAIL
[TrustedTypePolicyFactory interface: window.trustedTypes must inherit property "emptyScript" with the proper type]
expected: FAIL
[TrustedTypePolicyFactory interface: window.trustedTypes must inherit property "getAttributeType(DOMString, DOMString, optional DOMString?, optional DOMString?)" with the proper type]
expected: FAIL
[TrustedTypePolicyFactory interface: calling getAttributeType(DOMString, DOMString, optional DOMString?, optional DOMString?) on window.trustedTypes with too few arguments must throw TypeError]
expected: FAIL
[TrustedTypePolicyFactory interface: window.trustedTypes must inherit property "getPropertyType(DOMString, DOMString, optional DOMString?)" with the proper type]
expected: FAIL
[TrustedTypePolicyFactory interface: calling getPropertyType(DOMString, DOMString, optional DOMString?) on window.trustedTypes with too few arguments must throw TypeError]
expected: FAIL
[TrustedTypePolicyFactory interface: window.trustedTypes must inherit property "defaultPolicy" with the proper type]
expected: FAIL
[TrustedTypePolicy interface: existence and properties of interface object]
expected: FAIL
[TrustedTypePolicy interface object length]
expected: FAIL
[TrustedTypePolicy interface object name]
expected: FAIL
[TrustedTypePolicy interface: existence and properties of interface prototype object]
expected: FAIL
[TrustedTypePolicy interface: existence and properties of interface prototype object's "constructor" property]
expected: FAIL
[TrustedTypePolicy interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
[TrustedTypePolicy interface: attribute name]
expected: FAIL
[TrustedTypePolicy interface: operation createHTML(DOMString, any...)]
expected: FAIL
[TrustedTypePolicy interface: operation createScript(DOMString, any...)]
expected: FAIL
[TrustedTypePolicy interface: operation createScriptURL(DOMString, any...)]
expected: FAIL
[TrustedTypePolicy must be primary interface of window.trustedTypes.createPolicy("SomeName", { createHTML: s => s })]
expected: FAIL
[Stringification of window.trustedTypes.createPolicy("SomeName", { createHTML: s => s })]
expected: FAIL
[TrustedTypePolicy interface: window.trustedTypes.createPolicy("SomeName", { createHTML: s => s }) must inherit property "name" with the proper type]
expected: FAIL
[TrustedTypePolicy interface: window.trustedTypes.createPolicy("SomeName", { createHTML: s => s }) must inherit property "createHTML(DOMString, any...)" with the proper type]
expected: FAIL
[TrustedTypePolicy interface: calling createHTML(DOMString, any...) on window.trustedTypes.createPolicy("SomeName", { createHTML: s => s }) with too few arguments must throw TypeError]
expected: FAIL
[TrustedTypePolicy interface: window.trustedTypes.createPolicy("SomeName", { createHTML: s => s }) must inherit property "createScript(DOMString, any...)" with the proper type]
expected: FAIL
[TrustedTypePolicy interface: calling createScript(DOMString, any...) on window.trustedTypes.createPolicy("SomeName", { createHTML: s => s }) with too few arguments must throw TypeError]
expected: FAIL
[TrustedTypePolicy interface: window.trustedTypes.createPolicy("SomeName", { createHTML: s => s }) must inherit property "createScriptURL(DOMString, any...)" with the proper type]
expected: FAIL
[TrustedTypePolicy interface: calling createScriptURL(DOMString, any...) on window.trustedTypes.createPolicy("SomeName", { createHTML: s => s }) with too few arguments must throw TypeError]
expected: FAIL
[Window interface: attribute trustedTypes]
expected: FAIL

View file

@ -1,2 +1,31 @@
[inheriting-csp-for-local-schemes.html]
expected: ERROR
expected: TIMEOUT
[require-trusted-types-for directive should be inherited in local srcdoc frames]
expected: TIMEOUT
[trusted-types directive should be inherited in local srcdoc frames]
expected: NOTRUN
[require-trusted-types-for directive should be inherited in local data frames]
expected: NOTRUN
[trusted-types directive should be inherited in local data frames]
expected: NOTRUN
[require-trusted-types-for directive should be inherited in local blob frames]
expected: NOTRUN
[trusted-types directive should be inherited in local blob frames]
expected: NOTRUN
[require-trusted-types-for directive should be inherited in local about:blank frames]
expected: NOTRUN
[trusted-types directive should be inherited in local about:blank frames]
expected: NOTRUN
[require-trusted-types-for directive should not be inherited in local blank.html frames]
expected: NOTRUN
[trusted-types directive should not be inherited in local blank.html frames]
expected: NOTRUN

View file

@ -1,2 +1,6 @@
[modify-attributes-in-callback.html]
expected: ERROR
[Ensure setAttributeNode throws InUseAttributeError when callback assigns attributes.]
expected: FAIL
[Ensure setAttributeNodeNS throws InUseAttributeError when callback assigns attributes.]
expected: FAIL

View file

@ -1,2 +0,0 @@
[no-require-trusted-types-for-report-only.html]
expected: ERROR

View file

@ -1,2 +0,0 @@
[no-require-trusted-types-for.html]
expected: ERROR

View file

@ -1,2 +1,744 @@
[set-attributes-mutations-in-callback.tentative.html]
expected: ERROR
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete other attribute before)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete other attribute before)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete other attribute before)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete other attribute before)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete other attribute before)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete other attribute before)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete other attribute before)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete other attribute before)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete other attribute before)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete other attribute before)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete other attribute before)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete other attribute before)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete other attribute before)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete other attribute before)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete other attribute before)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete other attribute before)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete other attribute before)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete other attribute before)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete other attribute before)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete other attribute before)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete other attribute before)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete other attribute before)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete other attribute before)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete other attribute before)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete other attribute before)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete other attribute before)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete other attribute before)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete other attribute before)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete other attribute before)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete other attribute before)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete other attribute before)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete other attribute before)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete other attribute before)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete other attribute before)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete other attribute before)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete other attribute before)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete other attribute before)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete other attribute before)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete other attribute before)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete other attribute before)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete other attribute before)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete other attribute before)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete other attribute before)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete other attribute before)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete other attribute before)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete other attribute before)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete other attribute before)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete other attribute before)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete other attribute before)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (delete attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (delete attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (delete attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (delete attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (delete attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (delete attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (delete attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (modify attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (modify attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (modify attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (modify attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (modify attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (modify attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (modify attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (modify attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (modify attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (modify attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (modify attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (modify attribute)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (modify attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (modify attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (modify attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (modify attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (modify attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (modify attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (modify attribute)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (modify attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (modify attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (modify attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (modify attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (modify attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (modify attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (modify attribute)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (modify attribute)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (modify attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (modify attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (modify attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (modify attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (modify attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (modify attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (modify attribute)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (modify attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (modify attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (modify attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (modify attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (modify attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (modify attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (modify attribute)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (modify attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (modify attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (modify attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (modify attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (modify attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (modify attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (modify attribute)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (modify attribute)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (move attribute node to another element)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (move attribute node to another element)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (move attribute node to another element)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (move attribute node to another element)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (move attribute node to another element)]
expected: FAIL
[Element.setAttribute works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNode works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (move attribute node to another element)]
expected: FAIL
[Element.setAttributeNodeNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItem works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (move attribute node to another element)]
expected: FAIL
[NamedNodeMap.setNamedItemNS works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (move attribute node to another element)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (move attribute node to another element)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (move attribute node to another element)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (move attribute node to another element)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (move attribute node to another element)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (move attribute node to another element)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (move attribute node to another element)]
expected: FAIL
[Attr.value works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (move attribute node to another element)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (move attribute node to another element)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (move attribute node to another element)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (move attribute node to another element)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (move attribute node to another element)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (move attribute node to another element)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (move attribute node to another element)]
expected: FAIL
[Node.nodeValue works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (move attribute node to another element)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick (move attribute node to another element)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick (move attribute node to another element)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown (move attribute node to another element)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc (move attribute node to another element)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src (move attribute node to another element)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href (move attribute node to another element)]
expected: FAIL
[Node.textContent works for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href (move attribute node to another element)]
expected: FAIL

View file

@ -1,2 +0,0 @@
[set-attributes-no-require-trusted-types.html]
expected: ERROR

View file

@ -1,2 +1,333 @@
[set-attributes-require-trusted-types-default-policy.html]
expected: ERROR
[Element.setAttribute applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick]
expected: FAIL
[Element.setAttribute applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick]
expected: FAIL
[Element.setAttribute applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown]
expected: FAIL
[Element.setAttribute applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc]
expected: FAIL
[Element.setAttribute applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src]
expected: FAIL
[Element.setAttribute applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href]
expected: FAIL
[Element.setAttributeNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick]
expected: FAIL
[Element.setAttributeNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick]
expected: FAIL
[Element.setAttributeNS applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown]
expected: FAIL
[Element.setAttributeNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc]
expected: FAIL
[Element.setAttributeNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src]
expected: FAIL
[Element.setAttributeNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href]
expected: FAIL
[Element.setAttributeNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick and a TrustedScript input.]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick and a TrustedScript input.]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown and a TrustedScript input.]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc and a TrustedHTML input.]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src and a TrustedScriptURL input.]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[Element.setAttributeNode applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick and a TrustedScript input.]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick and a TrustedScript input.]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown and a TrustedScript input.]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc and a TrustedHTML input.]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src and a TrustedScriptURL input.]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[Element.setAttributeNodeNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick and a TrustedScript input.]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick and a TrustedScript input.]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown and a TrustedScript input.]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc and a TrustedHTML input.]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src and a TrustedScriptURL input.]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[NamedNodeMap.setNamedItem applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick and a TrustedScript input.]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick and a TrustedScript input.]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown and a TrustedScript input.]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc and a TrustedHTML input.]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src and a TrustedScriptURL input.]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[NamedNodeMap.setNamedItemNS applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick and a TrustedScript input.]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick and a TrustedScript input.]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown and a TrustedScript input.]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc and a TrustedHTML input.]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src and a TrustedScriptURL input.]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[Attr.value applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick and a TrustedScript input.]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick and a TrustedScript input.]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown and a TrustedScript input.]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc and a TrustedHTML input.]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src and a TrustedScriptURL input.]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[Node.nodeValue applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=DIV, attrName=onclick and a TrustedScript input.]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/2000/svg, element=g, attrName=ondblclick and a TrustedScript input.]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/1998/Math/MathML, element=mrow, attrName=onmousedown and a TrustedScript input.]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=IFRAME, attrName=srcdoc and a TrustedHTML input.]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/1999/xhtml, element=SCRIPT, attrName=src and a TrustedScriptURL input.]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrName=href and a TrustedScriptURL input.]
expected: FAIL
[Node.textContent applies default policy for elementNS=http://www.w3.org/2000/svg, element=script, attrNS=http://www.w3.org/1999/xlink, attrName=href and a TrustedScriptURL input.]
expected: FAIL

Some files were not shown because too many files have changed in this diff Show more