diff --git a/components/script/dom/attr.rs b/components/script/dom/attr.rs index 52d0ca7e20c..9f1520bd085 100644 --- a/components/script/dom/attr.rs +++ b/components/script/dom/attr.rs @@ -8,7 +8,7 @@ use std::mem; use devtools_traits::AttrInfo; use dom_struct::dom_struct; -use html5ever::{LocalName, Namespace, Prefix, ns}; +use html5ever::{LocalName, Namespace, Prefix, local_name, ns}; use style::attr::{AttrIdentifier, AttrValue}; use style::values::GenericAtomIdent; use stylo_atoms::Atom; @@ -179,7 +179,7 @@ impl Attr { assert_eq!(Some(owner), self.owner().as_deref()); owner.will_mutate_attr(self); self.swap_value(&mut value); - if *self.namespace() == ns!() { + if is_relevant_attribute(self.namespace(), self.local_name()) { vtable_for(owner.upcast()).attribute_mutated( self, AttributeMutation::Set(Some(&value)), @@ -283,3 +283,9 @@ impl<'dom> AttrHelpersForLayout<'dom> for LayoutDom<'dom, Attr> { &self.unsafe_get().identifier.namespace.0 } } + +/// A helper function to check if attribute is relevant. +pub(crate) fn is_relevant_attribute(namespace: &Namespace, local_name: &LocalName) -> bool { + // + namespace == &ns!() || (namespace == &ns!(xlink) && local_name == &local_name!("href")) +} diff --git a/components/script/dom/create.rs b/components/script/dom/create.rs index 5722dc4f6ac..2e7c4cf8def 100644 --- a/components/script/dom/create.rs +++ b/components/script/dom/create.rs @@ -85,6 +85,7 @@ use crate::dom::htmlulistelement::HTMLUListElement; use crate::dom::htmlunknownelement::HTMLUnknownElement; use crate::dom::htmlvideoelement::HTMLVideoElement; use crate::dom::svgelement::SVGElement; +use crate::dom::svgimageelement::SVGImageElement; use crate::dom::svgsvgelement::SVGSVGElement; use crate::realms::{InRealm, enter_realm}; use crate::script_runtime::CanGc; @@ -114,6 +115,7 @@ fn create_svg_element( } match name.local { + local_name!("image") => make!(SVGImageElement), local_name!("svg") => make!(SVGSVGElement), _ => make!(SVGElement), } diff --git a/components/script/dom/element.rs b/components/script/dom/element.rs index 4f1b957c12c..a73c5347d70 100644 --- a/components/script/dom/element.rs +++ b/components/script/dom/element.rs @@ -65,7 +65,7 @@ use xml5ever::serialize::TraversalScope::{ use crate::conversions::Convert; use crate::dom::activation::Activatable; -use crate::dom::attr::{Attr, AttrHelpersForLayout}; +use crate::dom::attr::{Attr, AttrHelpersForLayout, is_relevant_attribute}; use crate::dom::bindings::cell::{DomRefCell, Ref, RefMut, ref_filter_map}; use crate::dom::bindings::codegen::Bindings::AttrBinding::AttrMethods; use crate::dom::bindings::codegen::Bindings::DocumentBinding::DocumentMethods; @@ -1705,7 +1705,7 @@ impl Element { assert!(attr.GetOwnerElement().as_deref() == Some(self)); self.will_mutate_attr(attr); self.attrs.borrow_mut().push(Dom::from_ref(attr)); - if attr.namespace() == &ns!() { + if is_relevant_attribute(attr.namespace(), attr.local_name()) { vtable_for(self.upcast()).attribute_mutated(attr, AttributeMutation::Set(None), can_gc); } } @@ -1847,7 +1847,7 @@ impl Element { local_name: &LocalName, value: DOMString, ) -> AttrValue { - if *namespace == ns!() { + if is_relevant_attribute(namespace, local_name) { vtable_for(self.upcast()).parse_plain_attribute(local_name, value) } else { AttrValue::String(value.into()) @@ -1902,7 +1902,7 @@ impl Element { self.attrs.borrow_mut().remove(idx); attr.set_owner(None); - if attr.namespace() == &ns!() { + if is_relevant_attribute(attr.namespace(), attr.local_name()) { vtable_for(self.upcast()).attribute_mutated( &attr, AttributeMutation::Removed, @@ -2722,7 +2722,7 @@ impl ElementMethods for Element { attr.set_owner(Some(self)); self.attrs.borrow_mut()[position] = Dom::from_ref(attr); old_attr.set_owner(None); - if attr.namespace() == &ns!() { + if is_relevant_attribute(attr.namespace(), attr.local_name()) { vtable.attribute_mutated( attr, AttributeMutation::Set(Some(&old_attr.value())), diff --git a/components/script/dom/mod.rs b/components/script/dom/mod.rs index 1622cf57b79..91a4e1b1359 100644 --- a/components/script/dom/mod.rs +++ b/components/script/dom/mod.rs @@ -547,6 +547,7 @@ pub(crate) mod submitevent; pub(crate) mod subtlecrypto; pub(crate) mod svgelement; pub(crate) mod svggraphicselement; +pub(crate) mod svgimageelement; pub(crate) mod svgsvgelement; pub(crate) mod testbinding; pub(crate) mod testbindingiterable; diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs index ca785773b48..5f08abce354 100644 --- a/components/script/dom/node.rs +++ b/components/script/dom/node.rs @@ -4206,6 +4206,9 @@ impl From for LayoutElementType { ElementTypeId::HTMLElement(HTMLElementTypeId::HTMLTextAreaElement) => { LayoutElementType::HTMLTextAreaElement }, + ElementTypeId::SVGElement(SVGElementTypeId::SVGGraphicsElement( + SVGGraphicsElementTypeId::SVGImageElement, + )) => LayoutElementType::SVGImageElement, ElementTypeId::SVGElement(SVGElementTypeId::SVGGraphicsElement( SVGGraphicsElementTypeId::SVGSVGElement, )) => LayoutElementType::SVGSVGElement, diff --git a/components/script/dom/svgelement.rs b/components/script/dom/svgelement.rs index 9c8b990826d..0f36d942f3e 100644 --- a/components/script/dom/svgelement.rs +++ b/components/script/dom/svgelement.rs @@ -82,6 +82,9 @@ impl SVGElementMethods for SVGElement { }) } + // + global_event_handlers!(); + // FIXME: The nonce should be stored in an internal slot instead of an // attribute (https://html.spec.whatwg.org/multipage/#cryptographicnonce) // https://html.spec.whatwg.org/multipage/#dom-noncedelement-nonce diff --git a/components/script/dom/svgimageelement.rs b/components/script/dom/svgimageelement.rs new file mode 100644 index 00000000000..17a5a9149d8 --- /dev/null +++ b/components/script/dom/svgimageelement.rs @@ -0,0 +1,96 @@ +/* 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 html5ever::{LocalName, Prefix, local_name, ns}; +use js::rust::HandleObject; +use style::attr::AttrValue; + +use crate::dom::attr::Attr; +use crate::dom::bindings::inheritance::Castable; +use crate::dom::bindings::root::DomRoot; +use crate::dom::bindings::str::DOMString; +use crate::dom::document::Document; +use crate::dom::element::AttributeMutation; +use crate::dom::node::{Node, NodeTraits}; +use crate::dom::svggraphicselement::SVGGraphicsElement; +use crate::dom::virtualmethods::VirtualMethods; +use crate::script_runtime::CanGc; + +/// +const DEFAULT_WIDTH: u32 = 300; +const DEFAULT_HEIGHT: u32 = 150; + +#[dom_struct] +pub(crate) struct SVGImageElement { + svggraphicselement: SVGGraphicsElement, +} + +impl SVGImageElement { + fn new_inherited( + local_name: LocalName, + prefix: Option, + document: &Document, + ) -> SVGImageElement { + SVGImageElement { + svggraphicselement: SVGGraphicsElement::new_inherited(local_name, prefix, document), + } + } + + #[cfg_attr(crown, allow(crown::unrooted_must_root))] + pub(crate) fn new( + local_name: LocalName, + prefix: Option, + document: &Document, + proto: Option, + can_gc: CanGc, + ) -> DomRoot { + Node::reflect_node_with_proto( + Box::new(SVGImageElement::new_inherited(local_name, prefix, document)), + document, + proto, + can_gc, + ) + } + + /// + fn fetch_image_resource(&self) { + // TODO: Process and fetch the image resource (as HTMLImageElement). + // Reject any resource fetching request immediately. + self.owner_global() + .task_manager() + .dom_manipulation_task_source() + .queue_simple_event(self.upcast(), atom!("error")); + } +} + +impl VirtualMethods for SVGImageElement { + fn super_type(&self) -> Option<&dyn VirtualMethods> { + Some(self.upcast::() as &dyn VirtualMethods) + } + + fn attribute_mutated(&self, attr: &Attr, mutation: AttributeMutation, can_gc: CanGc) { + self.super_type() + .unwrap() + .attribute_mutated(attr, mutation, can_gc); + if attr.local_name() == &local_name!("href") && + matches!(attr.namespace(), &ns!() | &ns!(xlink)) + { + if let AttributeMutation::Set(_) = mutation { + self.fetch_image_resource(); + } + } + } + + fn parse_plain_attribute(&self, name: &LocalName, value: DOMString) -> AttrValue { + match *name { + local_name!("width") => AttrValue::from_u32(value.into(), DEFAULT_WIDTH), + local_name!("height") => AttrValue::from_u32(value.into(), DEFAULT_HEIGHT), + _ => self + .super_type() + .unwrap() + .parse_plain_attribute(name, value), + } + } +} diff --git a/components/script/dom/virtualmethods.rs b/components/script/dom/virtualmethods.rs index 57ecba7b172..1d992b1f301 100644 --- a/components/script/dom/virtualmethods.rs +++ b/components/script/dom/virtualmethods.rs @@ -61,6 +61,7 @@ use crate::dom::htmlvideoelement::HTMLVideoElement; use crate::dom::node::{BindContext, ChildrenMutation, CloneChildrenFlag, Node, UnbindContext}; use crate::dom::shadowroot::ShadowRoot; use crate::dom::svgelement::SVGElement; +use crate::dom::svgimageelement::SVGImageElement; use crate::dom::svgsvgelement::SVGSVGElement; /// Trait to allow DOM nodes to opt-in to overriding (or adding to) common @@ -298,6 +299,9 @@ pub(crate) fn vtable_for(node: &Node) -> &dyn VirtualMethods { NodeTypeId::Element(ElementTypeId::HTMLElement(HTMLElementTypeId::HTMLTitleElement)) => { node.downcast::().unwrap() as &dyn VirtualMethods }, + NodeTypeId::Element(ElementTypeId::SVGElement(SVGElementTypeId::SVGGraphicsElement( + SVGGraphicsElementTypeId::SVGImageElement, + ))) => node.downcast::().unwrap() as &dyn VirtualMethods, NodeTypeId::Element(ElementTypeId::SVGElement(SVGElementTypeId::SVGGraphicsElement( SVGGraphicsElementTypeId::SVGSVGElement, ))) => node.downcast::().unwrap() as &dyn VirtualMethods, diff --git a/components/script_bindings/webidls/SVGElement.webidl b/components/script_bindings/webidls/SVGElement.webidl index e6bc468d5dc..08bcb4a8c99 100644 --- a/components/script_bindings/webidls/SVGElement.webidl +++ b/components/script_bindings/webidls/SVGElement.webidl @@ -18,7 +18,7 @@ interface SVGElement : Element { //void blur(); }; -//SVGElement includes GlobalEventHandlers; +SVGElement includes GlobalEventHandlers; //SVGElement includes SVGElementInstance; SVGElement includes ElementCSSInlineStyle; SVGElement includes HTMLOrSVGElement; diff --git a/components/script_bindings/webidls/SVGImageElement.webidl b/components/script_bindings/webidls/SVGImageElement.webidl new file mode 100644 index 00000000000..bced6277c5e --- /dev/null +++ b/components/script_bindings/webidls/SVGImageElement.webidl @@ -0,0 +1,16 @@ +/* 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/. */ + +// https://svgwg.org/svg2-draft/embedded.html#InterfaceSVGImageElement +[Exposed=Window, Pref="dom_svg_enabled"] +interface SVGImageElement : SVGGraphicsElement { + //[SameObject] readonly attribute SVGAnimatedLength x; + //[SameObject] readonly attribute SVGAnimatedLength y; + //[SameObject] readonly attribute SVGAnimatedLength width; + //[SameObject] readonly attribute SVGAnimatedLength height; + //[SameObject] readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio; + //attribute DOMString? crossOrigin; +}; + +//SVGImageElement includes SVGURIReference; diff --git a/components/shared/script_layout/lib.rs b/components/shared/script_layout/lib.rs index 8c5d4edc4e0..1f526b64240 100644 --- a/components/shared/script_layout/lib.rs +++ b/components/shared/script_layout/lib.rs @@ -114,6 +114,7 @@ pub enum LayoutElementType { HTMLTableRowElement, HTMLTableSectionElement, HTMLTextAreaElement, + SVGImageElement, SVGSVGElement, } diff --git a/tests/wpt/meta/fetch/metadata/generated/svg-image.https.sub.html.ini b/tests/wpt/meta/fetch/metadata/generated/svg-image.https.sub.html.ini index 5d85add7f82..1e547ae5f21 100644 --- a/tests/wpt/meta/fetch/metadata/generated/svg-image.https.sub.html.ini +++ b/tests/wpt/meta/fetch/metadata/generated/svg-image.https.sub.html.ini @@ -1,70 +1,69 @@ [svg-image.https.sub.html] - expected: TIMEOUT [sec-fetch-site - Same origin no attributes] - expected: TIMEOUT + expected: FAIL [sec-fetch-site - Cross-site no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Same site no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Same-Origin -> Cross-Site -> Same-Origin redirect no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Same-Origin -> Same-Site -> Same-Origin redirect no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Cross-Site -> Same Origin no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Cross-Site -> Same-Site no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Cross-Site -> Cross-Site no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Same-Origin -> Same Origin no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Same-Origin -> Same-Site no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Same-Origin -> Cross-Site no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Same-Site -> Same Origin no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Same-Site -> Same-Site no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Same-Site -> Cross-Site no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - HTTPS downgrade-upgrade no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-mode no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-mode attributes: crossorigin] - expected: NOTRUN + expected: FAIL [sec-fetch-mode attributes: crossorigin=anonymous] - expected: NOTRUN + expected: FAIL [sec-fetch-mode attributes: crossorigin=use-credentials] - expected: NOTRUN + expected: FAIL [sec-fetch-dest no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-user no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-storage-access - Cross-site no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-storage-access - Same site no attributes] - expected: NOTRUN + expected: FAIL diff --git a/tests/wpt/meta/fetch/metadata/generated/svg-image.sub.html.ini b/tests/wpt/meta/fetch/metadata/generated/svg-image.sub.html.ini index dc3a74db79c..cec7a0548b1 100644 --- a/tests/wpt/meta/fetch/metadata/generated/svg-image.sub.html.ini +++ b/tests/wpt/meta/fetch/metadata/generated/svg-image.sub.html.ini @@ -1,55 +1,54 @@ [svg-image.sub.html] - expected: TIMEOUT [sec-fetch-site - Not sent to non-trustworthy same-origin destination no attributes] - expected: TIMEOUT + expected: FAIL [sec-fetch-site - Not sent to non-trustworthy same-site destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - Not sent to non-trustworthy cross-site destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-mode - Not sent to non-trustworthy same-origin destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-mode - Not sent to non-trustworthy same-site destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-mode - Not sent to non-trustworthy cross-site destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-dest - Not sent to non-trustworthy same-origin destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-dest - Not sent to non-trustworthy same-site destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-dest - Not sent to non-trustworthy cross-site destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-user - Not sent to non-trustworthy same-origin destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-user - Not sent to non-trustworthy same-site destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-user - Not sent to non-trustworthy cross-site destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - HTTPS downgrade (header not sent) no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - HTTPS upgrade no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-site - HTTPS downgrade-upgrade no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-storage-access - Not sent to non-trustworthy same-origin destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-storage-access - Not sent to non-trustworthy same-site destination no attributes] - expected: NOTRUN + expected: FAIL [sec-fetch-storage-access - Not sent to non-trustworthy cross-site destination no attributes] - expected: NOTRUN + expected: FAIL diff --git a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-drawImage.html.ini b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-drawImage.html.ini index c94490ae5ee..9cf5b2af86a 100644 --- a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-drawImage.html.ini +++ b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-drawImage.html.ini @@ -1,13 +1,13 @@ [createImageBitmap-drawImage.html] expected: ERROR [createImageBitmap from an OffscreenCanvas resized, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a vector HTMLImageElement resized, and drawImage on the created ImageBitmap] expected: FAIL [createImageBitmap from an OffscreenCanvas, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an HTMLCanvasElement, and drawImage on the created ImageBitmap] expected: FAIL @@ -22,34 +22,34 @@ expected: FAIL [createImageBitmap from an ImageData scaled down, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an OffscreenCanvas scaled down, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a bitmap SVGImageElement, and drawImage on the created ImageBitmap] - expected: TIMEOUT + expected: FAIL [createImageBitmap from a bitmap SVGImageElement resized, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an HTMLCanvasElement scaled down, and drawImage on the created ImageBitmap] expected: FAIL [createImageBitmap from a vector SVGImageElement, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an ImageData scaled up, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an HTMLVideoElement with negative sw/sh, and drawImage on the created ImageBitmap] expected: FAIL [createImageBitmap from a bitmap SVGImageElement scaled up, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a vector SVGImageElement resized, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a bitmap HTMLImageElement scaled up, and drawImage on the created ImageBitmap] expected: FAIL @@ -58,10 +58,10 @@ expected: FAIL [createImageBitmap from a vector SVGImageElement scaled down, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a vector SVGImageElement with negative sw/sh, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a bitmap HTMLImageElement scaled down, and drawImage on the created ImageBitmap] expected: FAIL @@ -73,16 +73,16 @@ expected: FAIL [createImageBitmap from a Blob scaled down, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an ImageData resized, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a vector HTMLImageElement scaled down, and drawImage on the created ImageBitmap] expected: FAIL [createImageBitmap from an ImageData, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an HTMLCanvasElement with negative sw/sh, and drawImage on the created ImageBitmap] expected: FAIL @@ -91,16 +91,16 @@ expected: FAIL [createImageBitmap from a vector SVGImageElement scaled up, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an ImageBitmap, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a Blob scaled up, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a bitmap SVGImageElement scaled down, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an HTMLVideoElement scaled up, and drawImage on the created ImageBitmap] expected: FAIL @@ -109,7 +109,7 @@ expected: FAIL [createImageBitmap from a Blob, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an HTMLVideoElement resized, and drawImage on the created ImageBitmap] expected: FAIL @@ -118,31 +118,31 @@ expected: FAIL [createImageBitmap from an ImageBitmap scaled down, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a Blob with negative sw/sh, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a bitmap SVGImageElement with negative sw/sh, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an ImageData with negative sw/sh, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an ImageBitmap scaled up, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an ImageBitmap resized, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an OffscreenCanvas scaled up, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an HTMLCanvasElement scaled up, and drawImage on the created ImageBitmap] expected: FAIL [createImageBitmap from a Blob resized, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an HTMLVideoElement from a data URL, and drawImage on the created ImageBitmap] expected: FAIL @@ -154,10 +154,10 @@ expected: FAIL [createImageBitmap from an ImageBitmap with negative sw/sh, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an OffscreenCanvas with negative sw/sh, and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a vector HTMLImageElement with negative sw/sh, and drawImage on the created ImageBitmap] expected: FAIL diff --git a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-flipY.html.ini b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-flipY.html.ini index f08e8a2918a..0cb93c5abc9 100644 --- a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-flipY.html.ini +++ b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-flipY.html.ini @@ -4,7 +4,7 @@ expected: NOTRUN [createImageBitmap from a vector SVGImageElement imageOrientation: "flipY", and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an HTMLCanvasElement imageOrientation: "none", and drawImage on the created ImageBitmap] expected: FAIL @@ -16,7 +16,7 @@ expected: FAIL [createImageBitmap from an OffscreenCanvas imageOrientation: "flipY", and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a vector HTMLImageElement imageOrientation: "flipY", and drawImage on the created ImageBitmap] expected: FAIL @@ -25,7 +25,7 @@ expected: FAIL [createImageBitmap from a Blob imageOrientation: "flipY", and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an HTMLCanvasElement imageOrientation: "flipY", and drawImage on the created ImageBitmap] expected: FAIL @@ -34,7 +34,7 @@ expected: FAIL [createImageBitmap from an ImageData imageOrientation: "flipY", and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a bitmap HTMLImageElement imageOrientation: "flipY", and drawImage on the created ImageBitmap] expected: FAIL @@ -43,7 +43,7 @@ expected: NOTRUN [createImageBitmap from an ImageBitmap imageOrientation: "flipY", and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a vector HTMLImageElement imageOrientation: "none", and drawImage on the created ImageBitmap] expected: FAIL @@ -61,7 +61,7 @@ expected: FAIL [createImageBitmap from a bitmap SVGImageElement imageOrientation: "flipY", and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a bitmap SVGImageElement imageOrientation: "none", and drawImage on the created ImageBitmap] expected: TIMEOUT @@ -82,19 +82,19 @@ expected: FAIL [createImageBitmap from a bitmap SVGImageElement imageOrientation: "from-image", and drawImage on the created ImageBitmap] - expected: TIMEOUT + expected: FAIL [createImageBitmap from a vector SVGImageElement imageOrientation: "from-image", and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an OffscreenCanvas imageOrientation: "from-image", and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an ImageData imageOrientation: "from-image", and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from an ImageBitmap imageOrientation: "from-image", and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL [createImageBitmap from a Blob imageOrientation: "from-image", and drawImage on the created ImageBitmap] - expected: NOTRUN + expected: FAIL diff --git a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-invalid-args.html.ini b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-invalid-args.html.ini index 673fc1e4ffd..aba246039a0 100644 --- a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-invalid-args.html.ini +++ b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-invalid-args.html.ini @@ -1,5 +1,5 @@ [createImageBitmap-invalid-args.html] - expected: ERROR + expected: CRASH [createImageBitmap with a vector HTMLImageElement source and sw set to 0] expected: FAIL diff --git a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-origin.sub.html.ini b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-origin.sub.html.ini index 210d26f7740..d7226bfed74 100644 --- a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-origin.sub.html.ini +++ b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-origin.sub.html.ini @@ -1,34 +1,34 @@ [createImageBitmap-origin.sub.html] expected: TIMEOUT [redirected to cross-origin HTMLVideoElement: origin unclear 2dContext.drawImage] - expected: NOTRUN + expected: FAIL [redirected to cross-origin HTMLVideoElement: origin unclear bitmaprenderer.transferFromImageBitmap] - expected: NOTRUN + expected: FAIL [unclean HTMLCanvasElement: origin unclear bitmaprenderer.transferFromImageBitmap] - expected: NOTRUN + expected: FAIL [unclean HTMLCanvasElement: origin unclear getImageData] - expected: NOTRUN + expected: FAIL [cross-origin HTMLVideoElement: origin unclear getImageData] - expected: NOTRUN + expected: FAIL [cross-origin SVGImageElement: origin unclear bitmaprenderer.transferFromImageBitmap] - expected: NOTRUN + expected: FAIL [cross-origin HTMLVideoElement: origin unclear bitmaprenderer.transferFromImageBitmap] - expected: NOTRUN + expected: FAIL [redirected to same-origin HTMLVideoElement: origin unclear getImageData] - expected: NOTRUN + expected: FAIL [cross-origin HTMLImageElement: origin unclear 2dContext.drawImage] expected: FAIL [cross-origin SVGImageElement: origin unclear 2dContext.drawImage] - expected: NOTRUN + expected: FAIL [cross-origin HTMLImageElement: origin unclear getImageData] expected: FAIL @@ -37,28 +37,28 @@ expected: FAIL [redirected to same-origin HTMLVideoElement: origin unclear 2dContext.drawImage] - expected: NOTRUN + expected: FAIL [unclean ImageBitmap: origin unclear bitmaprenderer.transferFromImageBitmap] - expected: NOTRUN + expected: FAIL [redirected to same-origin HTMLVideoElement: origin unclear bitmaprenderer.transferFromImageBitmap] - expected: NOTRUN + expected: FAIL [redirected to cross-origin HTMLVideoElement: origin unclear getImageData] - expected: NOTRUN + expected: FAIL [unclean ImageBitmap: origin unclear getImageData] - expected: NOTRUN + expected: FAIL [unclean HTMLCanvasElement: origin unclear 2dContext.drawImage] - expected: NOTRUN + expected: FAIL [cross-origin HTMLVideoElement: origin unclear 2dContext.drawImage] - expected: NOTRUN + expected: FAIL [unclean ImageBitmap: origin unclear 2dContext.drawImage] - expected: NOTRUN + expected: FAIL [cross-origin SVGImageElement: origin unclear getImageData] - expected: TIMEOUT + expected: FAIL diff --git a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-serializable.html.ini b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-serializable.html.ini index 7616121487c..4234bcb2133 100644 --- a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-serializable.html.ini +++ b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-serializable.html.ini @@ -1,7 +1,6 @@ [createImageBitmap-serializable.html] - expected: TIMEOUT [Serialize ImageBitmap created from a vector SVGImageElement] - expected: NOTRUN + expected: FAIL [Serialize ImageBitmap created from an HTMLVideoElement] expected: FAIL @@ -13,25 +12,25 @@ expected: FAIL [Serialize ImageBitmap created from an OffscreenCanvas] - expected: NOTRUN + expected: FAIL [Serialize ImageBitmap created from a vector HTMLImageElement] expected: FAIL [Serialize ImageBitmap created from a Blob] - expected: NOTRUN + expected: FAIL [Serialize ImageBitmap created from a bitmap HTMLImageElement] expected: FAIL [Serializing a non-origin-clean ImageBitmap throws.] - expected: NOTRUN + expected: FAIL [Serialize ImageBitmap created from an ImageData] - expected: NOTRUN + expected: FAIL [Serialize ImageBitmap created from an ImageBitmap] - expected: NOTRUN + expected: FAIL [Serialize ImageBitmap created from a bitmap SVGImageElement] - expected: TIMEOUT + expected: FAIL diff --git a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-transfer.html.ini b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-transfer.html.ini index 5d2657041d1..cff84fd3a26 100644 --- a/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-transfer.html.ini +++ b/tests/wpt/meta/html/canvas/element/manual/imagebitmap/createImageBitmap-transfer.html.ini @@ -1,22 +1,21 @@ [createImageBitmap-transfer.html] - expected: ERROR [Transfer ImageBitmap created from a vector HTMLImageElement] expected: FAIL [Transfer ImageBitmap created from an ImageData] - expected: NOTRUN + expected: FAIL [Transfer ImageBitmap created from a vector SVGImageElement] - expected: NOTRUN + expected: FAIL [Transfer ImageBitmap created from a Blob] - expected: NOTRUN + expected: FAIL [Transfer ImageBitmap created from an HTMLCanvasElement] expected: FAIL [Transfer ImageBitmap created from an OffscreenCanvas] - expected: NOTRUN + expected: FAIL [Transfer ImageBitmap created from a bitmap HTMLImageElement] expected: FAIL @@ -25,13 +24,13 @@ expected: FAIL [Transfer ImageBitmap created from a bitmap SVGImageElement] - expected: TIMEOUT + expected: FAIL [Transfer ImageBitmap created from an ImageBitmap] - expected: NOTRUN + expected: FAIL [Transfer ImageBitmap created from an HTMLVideoElement] expected: FAIL [Transferring a non-origin-clean ImageBitmap throws.] - expected: NOTRUN + expected: FAIL diff --git a/tests/wpt/meta/html/dom/idlharness.https.html.ini b/tests/wpt/meta/html/dom/idlharness.https.html.ini index 311e3abaf15..981cd249aa6 100644 --- a/tests/wpt/meta/html/dom/idlharness.https.html.ini +++ b/tests/wpt/meta/html/dom/idlharness.https.html.ini @@ -5123,231 +5123,6 @@ [External interface: window.external must inherit property "IsSearchProviderInstalled()" with the proper type] expected: FAIL - [SVGElement interface: attribute onabort] - expected: FAIL - - [SVGElement interface: attribute onauxclick] - expected: FAIL - - [SVGElement interface: attribute onbeforeinput] - expected: FAIL - - [SVGElement interface: attribute onbeforematch] - expected: FAIL - - [SVGElement interface: attribute onbeforetoggle] - expected: FAIL - - [SVGElement interface: attribute onblur] - expected: FAIL - - [SVGElement interface: attribute oncancel] - expected: FAIL - - [SVGElement interface: attribute oncanplay] - expected: FAIL - - [SVGElement interface: attribute oncanplaythrough] - expected: FAIL - - [SVGElement interface: attribute onchange] - expected: FAIL - - [SVGElement interface: attribute onclick] - expected: FAIL - - [SVGElement interface: attribute onclose] - expected: FAIL - - [SVGElement interface: attribute oncontextlost] - expected: FAIL - - [SVGElement interface: attribute oncontextmenu] - expected: FAIL - - [SVGElement interface: attribute oncontextrestored] - expected: FAIL - - [SVGElement interface: attribute oncopy] - expected: FAIL - - [SVGElement interface: attribute oncuechange] - expected: FAIL - - [SVGElement interface: attribute oncut] - expected: FAIL - - [SVGElement interface: attribute ondblclick] - expected: FAIL - - [SVGElement interface: attribute ondrag] - expected: FAIL - - [SVGElement interface: attribute ondragend] - expected: FAIL - - [SVGElement interface: attribute ondragenter] - expected: FAIL - - [SVGElement interface: attribute ondragleave] - expected: FAIL - - [SVGElement interface: attribute ondragover] - expected: FAIL - - [SVGElement interface: attribute ondragstart] - expected: FAIL - - [SVGElement interface: attribute ondrop] - expected: FAIL - - [SVGElement interface: attribute ondurationchange] - expected: FAIL - - [SVGElement interface: attribute onemptied] - expected: FAIL - - [SVGElement interface: attribute onended] - expected: FAIL - - [SVGElement interface: attribute onerror] - expected: FAIL - - [SVGElement interface: attribute onfocus] - expected: FAIL - - [SVGElement interface: attribute onformdata] - expected: FAIL - - [SVGElement interface: attribute oninput] - expected: FAIL - - [SVGElement interface: attribute oninvalid] - expected: FAIL - - [SVGElement interface: attribute onkeydown] - expected: FAIL - - [SVGElement interface: attribute onkeypress] - expected: FAIL - - [SVGElement interface: attribute onkeyup] - expected: FAIL - - [SVGElement interface: attribute onload] - expected: FAIL - - [SVGElement interface: attribute onloadeddata] - expected: FAIL - - [SVGElement interface: attribute onloadedmetadata] - expected: FAIL - - [SVGElement interface: attribute onloadstart] - expected: FAIL - - [SVGElement interface: attribute onmousedown] - expected: FAIL - - [SVGElement interface: attribute onmouseenter] - expected: FAIL - - [SVGElement interface: attribute onmouseleave] - expected: FAIL - - [SVGElement interface: attribute onmousemove] - expected: FAIL - - [SVGElement interface: attribute onmouseout] - expected: FAIL - - [SVGElement interface: attribute onmouseover] - expected: FAIL - - [SVGElement interface: attribute onmouseup] - expected: FAIL - - [SVGElement interface: attribute onpaste] - expected: FAIL - - [SVGElement interface: attribute onpause] - expected: FAIL - - [SVGElement interface: attribute onplay] - expected: FAIL - - [SVGElement interface: attribute onplaying] - expected: FAIL - - [SVGElement interface: attribute onprogress] - expected: FAIL - - [SVGElement interface: attribute onratechange] - expected: FAIL - - [SVGElement interface: attribute onreset] - expected: FAIL - - [SVGElement interface: attribute onresize] - expected: FAIL - - [SVGElement interface: attribute onscroll] - expected: FAIL - - [SVGElement interface: attribute onscrollend] - expected: FAIL - - [SVGElement interface: attribute onsecuritypolicyviolation] - expected: FAIL - - [SVGElement interface: attribute onseeked] - expected: FAIL - - [SVGElement interface: attribute onseeking] - expected: FAIL - - [SVGElement interface: attribute onselect] - expected: FAIL - - [SVGElement interface: attribute onslotchange] - expected: FAIL - - [SVGElement interface: attribute onstalled] - expected: FAIL - - [SVGElement interface: attribute onsubmit] - expected: FAIL - - [SVGElement interface: attribute onsuspend] - expected: FAIL - - [SVGElement interface: attribute ontimeupdate] - expected: FAIL - - [SVGElement interface: attribute ontoggle] - expected: FAIL - - [SVGElement interface: attribute onvolumechange] - expected: FAIL - - [SVGElement interface: attribute onwaiting] - expected: FAIL - - [SVGElement interface: attribute onwebkitanimationend] - expected: FAIL - - [SVGElement interface: attribute onwebkitanimationiteration] - expected: FAIL - - [SVGElement interface: attribute onwebkitanimationstart] - expected: FAIL - - [SVGElement interface: attribute onwebkittransitionend] - expected: FAIL - - [SVGElement interface: attribute onwheel] - expected: FAIL - [SVGElement interface: attribute dataset] expected: FAIL @@ -5444,9 +5219,6 @@ [CommandEvent interface: attribute command] expected: FAIL - [SVGElement interface: attribute oncommand] - expected: FAIL - [CanvasRenderingContext2D interface: attribute lang] expected: FAIL diff --git a/tests/wpt/meta/html/semantics/embedded-content/the-canvas-element/security.pattern.fillStyle.sub.html.ini b/tests/wpt/meta/html/semantics/embedded-content/the-canvas-element/security.pattern.fillStyle.sub.html.ini index cacfdf56967..81329bc1635 100644 --- a/tests/wpt/meta/html/semantics/embedded-content/the-canvas-element/security.pattern.fillStyle.sub.html.ini +++ b/tests/wpt/meta/html/semantics/embedded-content/the-canvas-element/security.pattern.fillStyle.sub.html.ini @@ -1,16 +1,16 @@ [security.pattern.fillStyle.sub.html] expected: TIMEOUT [cross-origin SVGImageElement: Setting fillStyle to an origin-unclean pattern makes the canvas origin-unclean] - expected: TIMEOUT + expected: FAIL [cross-origin HTMLVideoElement: Setting fillStyle to an origin-unclean pattern makes the canvas origin-unclean] - expected: NOTRUN + expected: FAIL [redirected to cross-origin HTMLVideoElement: Setting fillStyle to an origin-unclean pattern makes the canvas origin-unclean] - expected: NOTRUN + expected: FAIL [redirected to same-origin HTMLVideoElement: Setting fillStyle to an origin-unclean pattern makes the canvas origin-unclean] - expected: NOTRUN + expected: TIMEOUT [unclean HTMLCanvasElement: Setting fillStyle to an origin-unclean pattern makes the canvas origin-unclean] expected: NOTRUN diff --git a/tests/wpt/meta/html/webappapis/scripting/events/event-handler-all-global-events.html.ini b/tests/wpt/meta/html/webappapis/scripting/events/event-handler-all-global-events.html.ini index 4d4bbb8a39e..5c286c73da4 100644 --- a/tests/wpt/meta/html/webappapis/scripting/events/event-handler-all-global-events.html.ini +++ b/tests/wpt/meta/html/webappapis/scripting/events/event-handler-all-global-events.html.ini @@ -1,460 +1,16 @@ [event-handler-all-global-events.html] - [onabort: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onabort: the default value must be null] - expected: FAIL - - [onauxclick: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onauxclick: the default value must be null] - expected: FAIL - - [onblur: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onblur: the default value must be null] - expected: FAIL - - [oncancel: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oncancel: the default value must be null] - expected: FAIL - - [oncanplay: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oncanplay: the default value must be null] - expected: FAIL - - [oncanplaythrough: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oncanplaythrough: the default value must be null] - expected: FAIL - - [onchange: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onchange: the default value must be null] - expected: FAIL - - [onclick: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onclick: the default value must be null] - expected: FAIL - - [onclose: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onclose: the default value must be null] - expected: FAIL - - [oncontextlost: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oncontextlost: the default value must be null] - expected: FAIL - - [oncontextmenu: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oncontextmenu: the default value must be null] - expected: FAIL - - [oncontextrestored: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oncontextrestored: the default value must be null] - expected: FAIL - - [oncuechange: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oncuechange: the default value must be null] - expected: FAIL - - [ondblclick: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [ondblclick: the default value must be null] - expected: FAIL - - [ondrag: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [ondrag: the default value must be null] - expected: FAIL - - [ondragend: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [ondragend: the default value must be null] - expected: FAIL - - [ondragenter: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [ondragenter: the default value must be null] - expected: FAIL - - [ondragleave: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [ondragleave: the default value must be null] - expected: FAIL - - [ondragover: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [ondragover: the default value must be null] - expected: FAIL - - [ondragstart: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [ondragstart: the default value must be null] - expected: FAIL - - [ondrop: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [ondrop: the default value must be null] - expected: FAIL - - [ondurationchange: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [ondurationchange: the default value must be null] - expected: FAIL - - [onemptied: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onemptied: the default value must be null] - expected: FAIL - - [onended: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onended: the default value must be null] - expected: FAIL - - [onfocus: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onfocus: the default value must be null] - expected: FAIL - - [onformdata: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onformdata: the default value must be null] - expected: FAIL - - [oninput: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oninput: the default value must be null] - expected: FAIL - - [oninvalid: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oninvalid: the default value must be null] - expected: FAIL - - [onkeydown: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onkeydown: the default value must be null] - expected: FAIL - - [onkeypress: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onkeypress: the default value must be null] - expected: FAIL - - [onkeyup: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onkeyup: the default value must be null] - expected: FAIL - - [onload: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onload: the default value must be null] - expected: FAIL - - [onloadeddata: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onloadeddata: the default value must be null] - expected: FAIL - - [onloadedmetadata: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onloadedmetadata: the default value must be null] - expected: FAIL - - [onloadstart: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onloadstart: the default value must be null] - expected: FAIL - - [onmousedown: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onmousedown: the default value must be null] - expected: FAIL - - [onmouseenter: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onmouseenter: the default value must be null] - expected: FAIL - - [onmouseleave: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onmouseleave: the default value must be null] - expected: FAIL - - [onmousemove: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onmousemove: the default value must be null] - expected: FAIL - - [onmouseout: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onmouseout: the default value must be null] - expected: FAIL - - [onmouseover: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onmouseover: the default value must be null] - expected: FAIL - - [onmouseup: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onmouseup: the default value must be null] - expected: FAIL - - [onpause: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onpause: the default value must be null] - expected: FAIL - - [onplay: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onplay: the default value must be null] - expected: FAIL - - [onplaying: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onplaying: the default value must be null] - expected: FAIL - - [onprogress: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onprogress: the default value must be null] - expected: FAIL - - [onratechange: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onratechange: the default value must be null] - expected: FAIL - - [onreset: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onreset: the default value must be null] - expected: FAIL - - [onresize: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onresize: the default value must be null] - expected: FAIL - - [onscroll: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onscroll: the default value must be null] - expected: FAIL - - [onsecuritypolicyviolation: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onsecuritypolicyviolation: the default value must be null] - expected: FAIL - - [onseeked: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onseeked: the default value must be null] - expected: FAIL - - [onseeking: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onseeking: the default value must be null] - expected: FAIL - - [onselect: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onselect: the default value must be null] - expected: FAIL - - [onslotchange: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onslotchange: the default value must be null] - expected: FAIL - - [onstalled: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onstalled: the default value must be null] - expected: FAIL - - [onsubmit: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onsubmit: the default value must be null] - expected: FAIL - - [onsuspend: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onsuspend: the default value must be null] - expected: FAIL - - [ontimeupdate: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [ontimeupdate: the default value must be null] - expected: FAIL - - [ontoggle: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [ontoggle: the default value must be null] - expected: FAIL - - [onvolumechange: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onvolumechange: the default value must be null] - expected: FAIL - - [onwaiting: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onwaiting: the default value must be null] - expected: FAIL - - [onwebkitanimationend: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onwebkitanimationend: the default value must be null] - expected: FAIL - [onwebkitanimationend: the content attribute must execute when an event is dispatched] expected: FAIL - [onwebkitanimationiteration: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onwebkitanimationiteration: the default value must be null] - expected: FAIL - [onwebkitanimationiteration: the content attribute must execute when an event is dispatched] expected: FAIL - [onwebkitanimationstart: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onwebkitanimationstart: the default value must be null] - expected: FAIL - [onwebkitanimationstart: the content attribute must execute when an event is dispatched] expected: FAIL - [onwebkittransitionend: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onwebkittransitionend: the default value must be null] - expected: FAIL - [onwebkittransitionend: the content attribute must execute when an event is dispatched] expected: FAIL - [onwheel: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onwheel: the default value must be null] - expected: FAIL - - [onbeforeinput: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onbeforeinput: the default value must be null] - expected: FAIL - - [onbeforematch: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onbeforematch: the default value must be null] - expected: FAIL - - [onscrollend: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onscrollend: the default value must be null] - expected: FAIL - - [oncopy: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oncopy: the default value must be null] - expected: FAIL - - [oncut: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oncut: the default value must be null] - expected: FAIL - - [onpaste: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onpaste: the default value must be null] - expected: FAIL - - [onbeforetoggle: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [onbeforetoggle: the default value must be null] - expected: FAIL - [onwebkitanimationend: dispatching an Event at a element must trigger element.onwebkitanimationend] expected: FAIL @@ -466,9 +22,3 @@ [onwebkittransitionend: dispatching an Event at a element must trigger element.onwebkittransitionend] expected: FAIL - - [oncommand: must be on the appropriate locations for GlobalEventHandlers] - expected: FAIL - - [oncommand: the default value must be null] - expected: FAIL diff --git a/tests/wpt/mozilla/meta/MANIFEST.json b/tests/wpt/mozilla/meta/MANIFEST.json index 033a13106ac..2797b63f2ae 100644 --- a/tests/wpt/mozilla/meta/MANIFEST.json +++ b/tests/wpt/mozilla/meta/MANIFEST.json @@ -13582,7 +13582,7 @@ ] ], "interfaces.https.html": [ - "72918e837726b58740a491a9223eeeb625055ae5", + "eee8c799727b91e00b512795756b693a5f121f86", [ null, {} diff --git a/tests/wpt/mozilla/tests/mozilla/interfaces.https.html b/tests/wpt/mozilla/tests/mozilla/interfaces.https.html index 72918e83772..eee8c799727 100644 --- a/tests/wpt/mozilla/tests/mozilla/interfaces.https.html +++ b/tests/wpt/mozilla/tests/mozilla/interfaces.https.html @@ -315,6 +315,7 @@ test_interfaces([ "SubtleCrypto", "SVGElement", "SVGGraphicsElement", + "SVGImageElement", "SVGRect", "SVGSVGElement", "Text",