diff options
35 files changed, 9177 insertions, 216 deletions
diff --git a/Cargo.lock b/Cargo.lock index bf2c9c74e51..e2503d2cde4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -843,9 +843,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.23" +version = "1.2.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f4ac86a9e5bc1e2b3449ab9d7d3a6a405e3d1bb28d7b9be8614f55846ae3766" +checksum = "16595d3be041c03b09d08d0858631facccee9221e579704070e6e9e4915d3bc7" dependencies = [ "jobserver", "libc", @@ -1064,7 +1064,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c" dependencies = [ "lazy_static", - "windows-sys 0.48.0", + "windows-sys 0.59.0", ] [[package]] @@ -2028,7 +2028,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -2561,7 +2561,7 @@ dependencies = [ "gobject-sys", "libc", "system-deps", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -4003,7 +4003,7 @@ checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" dependencies = [ "hermit-abi 0.5.0", "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -4255,7 +4255,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a793df0d7afeac54f95b471d3af7f0d4fb975699f972341a4b76988d49cdf0c" dependencies = [ "cfg-if", - "windows-targets 0.48.5", + "windows-targets 0.52.6", ] [[package]] @@ -6180,7 +6180,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -6507,7 +6507,7 @@ dependencies = [ [[package]] name = "selectors" version = "0.28.0" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" dependencies = [ "bitflags 2.9.1", "cssparser", @@ -6802,7 +6802,7 @@ dependencies = [ [[package]] name = "servo_arc" version = "0.4.1" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" dependencies = [ "serde", "stable_deref_trait", @@ -7247,7 +7247,7 @@ dependencies = [ [[package]] name = "stylo" version = "0.3.0" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" dependencies = [ "app_units", "arrayvec", @@ -7305,7 +7305,7 @@ dependencies = [ [[package]] name = "stylo_atoms" version = "0.3.0" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" dependencies = [ "string_cache", "string_cache_codegen", @@ -7314,12 +7314,12 @@ dependencies = [ [[package]] name = "stylo_config" version = "0.3.0" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" [[package]] name = "stylo_derive" version = "0.3.0" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" dependencies = [ "darling", "proc-macro2", @@ -7331,7 +7331,7 @@ dependencies = [ [[package]] name = "stylo_dom" version = "0.3.0" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" dependencies = [ "bitflags 2.9.1", "stylo_malloc_size_of", @@ -7340,7 +7340,7 @@ dependencies = [ [[package]] name = "stylo_malloc_size_of" version = "0.3.0" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" dependencies = [ "app_units", "cssparser", @@ -7357,12 +7357,12 @@ dependencies = [ [[package]] name = "stylo_static_prefs" version = "0.3.0" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" [[package]] name = "stylo_traits" version = "0.3.0" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" dependencies = [ "app_units", "bitflags 2.9.1", @@ -7526,7 +7526,7 @@ dependencies = [ "getrandom", "once_cell", "rustix", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -7745,7 +7745,7 @@ dependencies = [ [[package]] name = "to_shmem" version = "0.2.0" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" dependencies = [ "cssparser", "servo_arc", @@ -7758,7 +7758,7 @@ dependencies = [ [[package]] name = "to_shmem_derive" version = "0.1.0" -source = "git+https://github.com/servo/stylo?branch=2025-05-01#88b34ae4293ca7286584cee37bca1f58ab79a8cb" +source = "git+https://github.com/servo/stylo?branch=2025-05-01#1707256dd825f14e98161a49fdd6749f8ca0d506" dependencies = [ "darling", "proc-macro2", @@ -8724,9 +8724,9 @@ dependencies = [ [[package]] name = "weezl" -version = "0.1.8" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082" +checksum = "a751b3277700db47d3e574514de2eced5e54dc8a5436a3bf7a0b248b2cee16f3" [[package]] name = "wgpu-core" @@ -8879,7 +8879,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.48.0", + "windows-sys 0.59.0", ] [[package]] diff --git a/components/layout/display_list/background.rs b/components/layout/display_list/background.rs index 563bce28450..f1099fdab2b 100644 --- a/components/layout/display_list/background.rs +++ b/components/layout/display_list/background.rs @@ -3,7 +3,7 @@ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ use app_units::Au; -use euclid::{Point2D, Size2D, Vector2D}; +use euclid::{Size2D, Vector2D}; use style::computed_values::background_attachment::SingleComputedValue as BackgroundAttachment; use style::computed_values::background_clip::single_value::T as Clip; use style::computed_values::background_origin::single_value::T as Origin; @@ -15,7 +15,6 @@ use style::values::specified::background::{ }; use webrender_api::{self as wr, units}; use wr::ClipChainId; -use wr::units::LayoutSize; use crate::replaced::NaturalSizes; @@ -66,8 +65,7 @@ impl<'a> BackgroundPainter<'a> { if &BackgroundAttachment::Fixed == get_cyclic(&background.background_attachment.0, layer_index) { - let viewport_size = builder.compositor_info.viewport_size; - return units::LayoutRect::from_origin_and_size(Point2D::origin(), viewport_size); + return builder.compositor_info.viewport_size.into(); } match get_cyclic(&background.background_clip.0, layer_index) { @@ -132,6 +130,7 @@ impl<'a> BackgroundPainter<'a> { pub(super) fn positioning_area( &self, fragment_builder: &'a super::BuilderForBoxFragment, + builder: &mut super::DisplayListBuilder, layer_index: usize, ) -> units::LayoutRect { if let Some(positioning_area_override) = self.positioning_area_override { @@ -150,14 +149,7 @@ impl<'a> BackgroundPainter<'a> { Origin::PaddingBox => *fragment_builder.padding_rect(), Origin::BorderBox => fragment_builder.border_rect, }, - BackgroundAttachment::Fixed => { - // This isn't the viewport size because that rects larger than the viewport might be - // transformed down into areas smaller than the viewport. - units::LayoutRect::from_origin_and_size( - Point2D::origin(), - LayoutSize::new(f32::MAX, f32::MAX), - ) - }, + BackgroundAttachment::Fixed => builder.compositor_info.viewport_size.into(), } } } @@ -170,7 +162,7 @@ pub(super) fn layout_layer( natural_sizes: NaturalSizes, ) -> Option<BackgroundLayer> { let painting_area = painter.painting_area(fragment_builder, builder, layer_index); - let positioning_area = painter.positioning_area(fragment_builder, layer_index); + let positioning_area = painter.positioning_area(fragment_builder, builder, layer_index); let common = painter.common_properties(fragment_builder, builder, layer_index, painting_area); // https://drafts.csswg.org/css-backgrounds/#background-size diff --git a/components/layout/flow/root.rs b/components/layout/flow/root.rs index 8ad3671032e..fb9884a4f01 100644 --- a/components/layout/flow/root.rs +++ b/components/layout/flow/root.rs @@ -5,6 +5,8 @@ use app_units::Au; use atomic_refcell::AtomicRef; use compositing_traits::display_list::AxesScrollSensitivity; +use euclid::Rect; +use euclid::default::Size2D as UntypedSize2D; use malloc_size_of_derive::MallocSizeOf; use script::layout_dom::ServoLayoutNode; use script_layout_interface::wrapper_traits::{ @@ -27,7 +29,7 @@ use crate::flow::inline::InlineItem; use crate::flow::{BlockContainer, BlockFormattingContext, BlockLevelBox}; use crate::formatting_contexts::IndependentFormattingContext; use crate::fragment_tree::FragmentTree; -use crate::geom::{LogicalVec2, PhysicalPoint, PhysicalRect, PhysicalSize}; +use crate::geom::{LogicalVec2, PhysicalRect, PhysicalSize}; use crate::positioned::{AbsolutelyPositionedBox, PositioningContext}; use crate::replaced::ReplacedContents; use crate::style_ext::{Display, DisplayGeneratingBox, DisplayInside}; @@ -348,7 +350,7 @@ impl BoxTree { pub fn layout( &self, layout_context: &LayoutContext, - viewport: euclid::Size2D<f32, CSSPixel>, + viewport: UntypedSize2D<Au>, ) -> FragmentTree { let style = layout_context .style_context @@ -358,13 +360,8 @@ impl BoxTree { // FIXME: use the document’s mode: // https://drafts.csswg.org/css-writing-modes/#principal-flow - let physical_containing_block = PhysicalRect::new( - PhysicalPoint::zero(), - PhysicalSize::new( - Au::from_f32_px(viewport.width), - Au::from_f32_px(viewport.height), - ), - ); + let physical_containing_block: Rect<Au, CSSPixel> = + PhysicalSize::from_untyped(viewport).into(); let initial_containing_block = DefiniteContainingBlock { size: LogicalVec2 { inline: physical_containing_block.size.width, diff --git a/components/layout/layout_impl.rs b/components/layout/layout_impl.rs index 8162ed1dd0b..3452c9a6e4c 100644 --- a/components/layout/layout_impl.rs +++ b/components/layout/layout_impl.rs @@ -16,7 +16,7 @@ use base::id::{PipelineId, WebViewId}; use compositing_traits::CrossProcessCompositorApi; use constellation_traits::ScrollState; use embedder_traits::{UntrustedNodeAddress, ViewportDetails}; -use euclid::default::{Point2D as UntypedPoint2D, Rect as UntypedRect, Size2D as UntypedSize2D}; +use euclid::default::{Point2D as UntypedPoint2D, Rect as UntypedRect}; use euclid::{Point2D, Scale, Size2D, Vector2D}; use fnv::FnvHashMap; use fonts::{FontContext, FontContextWebFontMethods}; @@ -150,10 +150,6 @@ pub struct LayoutThread { /// A counter for epoch messages epoch: Cell<Epoch>, - /// The size of the viewport. This may be different from the size of the screen due to viewport - /// constraints. - viewport_size: UntypedSize2D<Au>, - /// Scroll offsets of nodes that scroll. scroll_offsets: RefCell<HashMap<ExternalScrollId, Vector2D<f32, LayoutPixel>>>, @@ -527,10 +523,6 @@ impl LayoutThread { stacking_context_tree: Default::default(), // Epoch starts at 1 because of the initial display list for epoch 0 that we send to WR epoch: Cell::new(Epoch(1)), - viewport_size: Size2D::new( - Au::from_f32_px(config.viewport_details.size.width), - Au::from_f32_px(config.viewport_details.size.height), - ), compositor_api: config.compositor_api, scroll_offsets: Default::default(), stylist: Stylist::new(device, QuirksMode::NoQuirks), @@ -611,7 +603,8 @@ impl LayoutThread { ua_or_user: &ua_or_user_guard, }; - if self.update_device_if_necessary(&reflow_request, &guards) { + let viewport_changed = self.viewport_did_change(reflow_request.viewport_details); + if self.update_device_if_necessary(&reflow_request, viewport_changed, &guards) { if let Some(mut data) = root_element.mutate_data() { data.hint.insert(RestyleHint::recascade_subtree()); } @@ -653,14 +646,15 @@ impl LayoutThread { highlighted_dom_node: reflow_request.highlighted_dom_node, }; - let did_reflow = self.restyle_and_build_trees( + let damage = self.restyle_and_build_trees( &reflow_request, root_element, rayon_pool, &mut layout_context, + viewport_changed, ); - self.build_stacking_context_tree(&reflow_request, did_reflow); + self.build_stacking_context_tree(&reflow_request, damage); self.build_display_list(&reflow_request, &mut layout_context); self.first_reflow.set(false); @@ -683,12 +677,12 @@ impl LayoutThread { fn update_device_if_necessary( &mut self, reflow_request: &ReflowRequest, + viewport_changed: bool, guards: &StylesheetGuards, ) -> bool { let had_used_viewport_units = self.stylist.device().used_viewport_units(); - let viewport_size_changed = self.viewport_did_change(reflow_request.viewport_details); let theme_changed = self.theme_did_change(reflow_request.theme); - if !viewport_size_changed && !theme_changed { + if !viewport_changed && !theme_changed { return false; } self.update_device( @@ -696,7 +690,7 @@ impl LayoutThread { reflow_request.theme, guards, ); - (viewport_size_changed && had_used_viewport_units) || theme_changed + (viewport_changed && had_used_viewport_units) || theme_changed } fn prepare_stylist_for_reflow<'dom>( @@ -749,7 +743,8 @@ impl LayoutThread { root_element: ServoLayoutElement<'_>, rayon_pool: Option<&ThreadPool>, layout_context: &mut LayoutContext<'_>, - ) -> bool { + viewport_changed: bool, + ) -> RestyleDamage { let dirty_root = unsafe { ServoLayoutNode::new(&reflow_request.dirty_root.unwrap()) .as_element() @@ -765,7 +760,7 @@ impl LayoutThread { if !token.should_traverse() { layout_context.style_context.stylist.rule_tree().maybe_gc(); - return false; + return RestyleDamage::empty(); } let dirty_root: ServoLayoutNode = @@ -773,9 +768,9 @@ impl LayoutThread { let root_node = root_element.as_node(); let damage = compute_damage_and_repair_style(layout_context.shared_context(), root_node); - if damage.is_empty() || damage == RestyleDamage::REPAINT { + if !viewport_changed && !damage.contains(RestyleDamage::REBUILD_BOX) { layout_context.style_context.stylist.rule_tree().maybe_gc(); - return false; + return damage; } let mut box_tree = self.box_tree.borrow_mut(); @@ -794,10 +789,7 @@ impl LayoutThread { build_box_tree() }; - let viewport_size = Size2D::new( - self.viewport_size.width.to_f32_px(), - self.viewport_size.height.to_f32_px(), - ); + let viewport_size = self.stylist.device().au_viewport_size(); let run_layout = || { box_tree .as_ref() @@ -836,10 +828,10 @@ impl LayoutThread { // GC the rule tree if some heuristics are met. layout_context.style_context.stylist.rule_tree().maybe_gc(); - true + damage } - fn build_stacking_context_tree(&self, reflow_request: &ReflowRequest, did_reflow: bool) { + fn build_stacking_context_tree(&self, reflow_request: &ReflowRequest, damage: RestyleDamage) { if !reflow_request.reflow_goal.needs_display_list() && !reflow_request.reflow_goal.needs_display() { @@ -848,14 +840,17 @@ impl LayoutThread { let Some(fragment_tree) = &*self.fragment_tree.borrow() else { return; }; - if !did_reflow && self.stacking_context_tree.borrow().is_some() { + if !damage.contains(RestyleDamage::REBUILD_STACKING_CONTEXT) && + self.stacking_context_tree.borrow().is_some() + { return; } - let viewport_size = LayoutSize::from_untyped(Size2D::new( - self.viewport_size.width.to_f32_px(), - self.viewport_size.height.to_f32_px(), - )); + let viewport_size = self.stylist.device().au_viewport_size(); + let viewport_size = LayoutSize::new( + viewport_size.width.to_f32_px(), + viewport_size.height.to_f32_px(), + ); // Build the StackingContextTree. This turns the `FragmentTree` into a // tree of fragments in CSS painting order and also creates all @@ -949,9 +944,6 @@ impl LayoutThread { Au::from_f32_px(viewport_details.size.height), ); - // TODO: eliminate self.viewport_size in favour of using self.device.au_viewport_size() - self.viewport_size = new_viewport_size; - let device = self.stylist.device(); let size_did_change = device.au_viewport_size() != new_viewport_size; let pixel_ratio_did_change = device.device_pixel_ratio().get() != new_pixel_ratio; diff --git a/components/layout/traversal.rs b/components/layout/traversal.rs index faf25dc170d..22faa4b1191 100644 --- a/components/layout/traversal.rs +++ b/components/layout/traversal.rs @@ -131,7 +131,9 @@ pub(crate) fn compute_damage_and_repair_style_inner( } } - if propagated_damage == RestyleDamage::REPAINT && original_damage == RestyleDamage::REPAINT { + if !propagated_damage.contains(RestyleDamage::REBUILD_BOX) && + !original_damage.contains(RestyleDamage::REBUILD_BOX) + { node.repair_style(context); } diff --git a/components/script/dom/bindings/structuredclone.rs b/components/script/dom/bindings/structuredclone.rs index c23156817cb..73974abe714 100644 --- a/components/script/dom/bindings/structuredclone.rs +++ b/components/script/dom/bindings/structuredclone.rs @@ -10,11 +10,13 @@ use std::os::raw; use std::ptr; use base::id::{ - BlobId, DomExceptionId, DomPointId, Index, MessagePortId, NamespaceIndex, PipelineNamespaceId, + BlobId, DomExceptionId, DomPointId, ImageBitmapId, Index, MessagePortId, NamespaceIndex, + PipelineNamespaceId, }; use constellation_traits::{ BlobImpl, DomException, DomPoint, MessagePortImpl, Serializable as SerializableInterface, - StructuredSerializedData, Transferrable as TransferrableInterface, TransformStreamData, + SerializableImageBitmap, StructuredSerializedData, Transferrable as TransferrableInterface, + TransformStreamData, }; use js::gc::RootedVec; use js::glue::{ @@ -42,6 +44,7 @@ use crate::dom::blob::Blob; use crate::dom::dompoint::DOMPoint; use crate::dom::dompointreadonly::DOMPointReadOnly; use crate::dom::globalscope::GlobalScope; +use crate::dom::imagebitmap::ImageBitmap; use crate::dom::messageport::MessagePort; use crate::dom::readablestream::ReadableStream; use crate::dom::types::{DOMException, TransformStream}; @@ -66,6 +69,7 @@ pub(super) enum StructuredCloneTags { DomException = 0xFFFF8007, WritableStream = 0xFFFF8008, TransformStream = 0xFFFF8009, + ImageBitmap = 0xFFFF800A, Max = 0xFFFFFFFF, } @@ -76,6 +80,7 @@ impl From<SerializableInterface> for StructuredCloneTags { SerializableInterface::DomPointReadOnly => StructuredCloneTags::DomPointReadOnly, SerializableInterface::DomPoint => StructuredCloneTags::DomPoint, SerializableInterface::DomException => StructuredCloneTags::DomException, + SerializableInterface::ImageBitmap => StructuredCloneTags::ImageBitmap, } } } @@ -83,6 +88,7 @@ impl From<SerializableInterface> for StructuredCloneTags { impl From<TransferrableInterface> for StructuredCloneTags { fn from(v: TransferrableInterface) -> Self { match v { + TransferrableInterface::ImageBitmap => StructuredCloneTags::ImageBitmap, TransferrableInterface::MessagePort => StructuredCloneTags::MessagePort, TransferrableInterface::ReadableStream => StructuredCloneTags::ReadableStream, TransferrableInterface::WritableStream => StructuredCloneTags::WritableStream, @@ -104,6 +110,7 @@ fn reader_for_type( SerializableInterface::DomPointReadOnly => read_object::<DOMPointReadOnly>, SerializableInterface::DomPoint => read_object::<DOMPoint>, SerializableInterface::DomException => read_object::<DOMException>, + SerializableInterface::ImageBitmap => read_object::<ImageBitmap>, } } @@ -237,6 +244,7 @@ fn serialize_for_type(val: SerializableInterface) -> SerializeOperation { SerializableInterface::DomPointReadOnly => try_serialize::<DOMPointReadOnly>, SerializableInterface::DomPoint => try_serialize::<DOMPoint>, SerializableInterface::DomException => try_serialize::<DOMException>, + SerializableInterface::ImageBitmap => try_serialize::<ImageBitmap>, } } @@ -264,6 +272,7 @@ fn receiver_for_type( ) -> fn(&GlobalScope, &mut StructuredDataReader<'_>, u64, RawMutableHandleObject) -> Result<(), ()> { match val { + TransferrableInterface::ImageBitmap => receive_object::<ImageBitmap>, TransferrableInterface::MessagePort => receive_object::<MessagePort>, TransferrableInterface::ReadableStream => receive_object::<ReadableStream>, TransferrableInterface::WritableStream => receive_object::<WritableStream>, @@ -390,6 +399,7 @@ type TransferOperation = unsafe fn( fn transfer_for_type(val: TransferrableInterface) -> TransferOperation { match val { + TransferrableInterface::ImageBitmap => try_transfer::<ImageBitmap>, TransferrableInterface::MessagePort => try_transfer::<MessagePort>, TransferrableInterface::ReadableStream => try_transfer::<ReadableStream>, TransferrableInterface::WritableStream => try_transfer::<WritableStream>, @@ -439,6 +449,7 @@ unsafe fn can_transfer_for_type( root_from_object::<T>(*obj, cx).map(|o| Transferable::can_transfer(&*o)) } match transferable { + TransferrableInterface::ImageBitmap => can_transfer::<ImageBitmap>(obj, cx), TransferrableInterface::MessagePort => can_transfer::<MessagePort>(obj, cx), TransferrableInterface::ReadableStream => can_transfer::<ReadableStream>(obj, cx), TransferrableInterface::WritableStream => can_transfer::<WritableStream>(obj, cx), @@ -527,6 +538,10 @@ pub(crate) struct StructuredDataReader<'a> { pub(crate) points: Option<HashMap<DomPointId, DomPoint>>, /// A map of serialized exceptions. pub(crate) exceptions: Option<HashMap<DomExceptionId, DomException>>, + // A map of serialized image bitmaps. + pub(crate) image_bitmaps: Option<HashMap<ImageBitmapId, SerializableImageBitmap>>, + /// A map of transferred image bitmaps. + pub(crate) transferred_image_bitmaps: Option<HashMap<ImageBitmapId, SerializableImageBitmap>>, } /// A data holder for transferred and serialized objects. @@ -545,6 +560,10 @@ pub(crate) struct StructuredDataWriter { pub(crate) exceptions: Option<HashMap<DomExceptionId, DomException>>, /// Serialized blobs. pub(crate) blobs: Option<HashMap<BlobId, BlobImpl>>, + /// Serialized image bitmaps. + pub(crate) image_bitmaps: Option<HashMap<ImageBitmapId, SerializableImageBitmap>>, + /// Transferred image bitmaps. + pub(crate) transferred_image_bitmaps: Option<HashMap<ImageBitmapId, SerializableImageBitmap>>, } /// Writes a structured clone. Returns a `DataClone` error if that fails. @@ -599,6 +618,8 @@ pub(crate) fn write( points: sc_writer.points.take(), exceptions: sc_writer.exceptions.take(), blobs: sc_writer.blobs.take(), + image_bitmaps: sc_writer.image_bitmaps.take(), + transferred_image_bitmaps: sc_writer.transferred_image_bitmaps.take(), }; Ok(data) @@ -623,6 +644,8 @@ pub(crate) fn read( points: data.points.take(), exceptions: data.exceptions.take(), errors: DOMErrorRecord { message: None }, + image_bitmaps: data.image_bitmaps.take(), + transferred_image_bitmaps: data.transferred_image_bitmaps.take(), }; let sc_reader_ptr = &mut sc_reader as *mut _; unsafe { diff --git a/components/script/dom/globalscope.rs b/components/script/dom/globalscope.rs index 55db2e4d248..ec2ed70dd15 100644 --- a/components/script/dom/globalscope.rs +++ b/components/script/dom/globalscope.rs @@ -2992,8 +2992,7 @@ impl GlobalScope { if let Some(snapshot) = canvas.get_image_data() { let size = snapshot.size().cast(); - let image_bitmap = - ImageBitmap::new(self, size.width, size.height, can_gc).unwrap(); + let image_bitmap = ImageBitmap::new(self, size.width, size.height, can_gc); image_bitmap.set_bitmap_data(snapshot.to_vec()); image_bitmap.set_origin_clean(canvas.origin_is_clean()); p.resolve_native(&(image_bitmap), can_gc); @@ -3009,8 +3008,7 @@ impl GlobalScope { if let Some(snapshot) = canvas.get_image_data() { let size = snapshot.size().cast(); - let image_bitmap = - ImageBitmap::new(self, size.width, size.height, can_gc).unwrap(); + let image_bitmap = ImageBitmap::new(self, size.width, size.height, can_gc); image_bitmap.set_bitmap_data(snapshot.to_vec()); image_bitmap.set_origin_clean(canvas.origin_is_clean()); p.resolve_native(&(image_bitmap), can_gc); diff --git a/components/script/dom/imagebitmap.rs b/components/script/dom/imagebitmap.rs index ef6538e7451..97a1a54bba7 100644 --- a/components/script/dom/imagebitmap.rs +++ b/components/script/dom/imagebitmap.rs @@ -3,15 +3,20 @@ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ use std::cell::Cell; +use std::collections::HashMap; use std::vec::Vec; +use base::id::{ImageBitmapId, ImageBitmapIndex}; +use constellation_traits::SerializableImageBitmap; use dom_struct::dom_struct; use crate::dom::bindings::cell::DomRefCell; use crate::dom::bindings::codegen::Bindings::ImageBitmapBinding::ImageBitmapMethods; -use crate::dom::bindings::error::Fallible; use crate::dom::bindings::reflector::{Reflector, reflect_dom_object}; use crate::dom::bindings::root::DomRoot; +use crate::dom::bindings::serializable::Serializable; +use crate::dom::bindings::structuredclone::StructuredData; +use crate::dom::bindings::transferable::Transferable; use crate::dom::globalscope::GlobalScope; use crate::script_runtime::CanGc; @@ -29,33 +34,36 @@ pub(crate) struct ImageBitmap { } impl ImageBitmap { - fn new_inherited(width_arg: u32, height_arg: u32) -> ImageBitmap { + fn new_inherited(width: u32, height: u32) -> ImageBitmap { ImageBitmap { reflector_: Reflector::new(), - width: width_arg, - height: height_arg, + width, + height, bitmap_data: DomRefCell::new(Some(vec![])), origin_clean: Cell::new(true), } } - #[allow(dead_code)] pub(crate) fn new( global: &GlobalScope, width: u32, height: u32, can_gc: CanGc, - ) -> Fallible<DomRoot<ImageBitmap>> { + ) -> DomRoot<ImageBitmap> { //assigning to a variable the return object of new_inherited let imagebitmap = Box::new(ImageBitmap::new_inherited(width, height)); - Ok(reflect_dom_object(imagebitmap, global, can_gc)) + reflect_dom_object(imagebitmap, global, can_gc) } pub(crate) fn set_bitmap_data(&self, data: Vec<u8>) { *self.bitmap_data.borrow_mut() = Some(data); } + pub(crate) fn origin_is_clean(&self) -> bool { + self.origin_clean.get() + } + pub(crate) fn set_origin_clean(&self, origin_is_clean: bool) { self.origin_clean.set(origin_is_clean); } @@ -67,6 +75,117 @@ impl ImageBitmap { } } +impl Serializable for ImageBitmap { + type Index = ImageBitmapIndex; + type Data = SerializableImageBitmap; + + /// <https://html.spec.whatwg.org/multipage/#the-imagebitmap-interface:serialization-steps> + fn serialize(&self) -> Result<(ImageBitmapId, Self::Data), ()> { + // Step 1. If value's origin-clean flag is not set, then throw a "DataCloneError" DOMException. + if !self.origin_is_clean() { + return Err(()); + } + + // If value has a [[Detached]] internal slot whose value is true, + // then throw a "DataCloneError" DOMException. + if self.is_detached() { + return Err(()); + } + + // Step 2. Set serialized.[[BitmapData]] to a copy of value's bitmap data. + let serialized = SerializableImageBitmap { + width: self.width, + height: self.height, + bitmap_data: self.bitmap_data.borrow().clone().unwrap(), + }; + + Ok((ImageBitmapId::new(), serialized)) + } + + /// <https://html.spec.whatwg.org/multipage/#the-imagebitmap-interface:deserialization-steps> + fn deserialize( + owner: &GlobalScope, + serialized: Self::Data, + can_gc: CanGc, + ) -> Result<DomRoot<Self>, ()> { + let image_bitmap = ImageBitmap::new(owner, serialized.width, serialized.height, can_gc); + + // Step 1. Set value's bitmap data to serialized.[[BitmapData]]. + image_bitmap.set_bitmap_data(serialized.bitmap_data); + + Ok(image_bitmap) + } + + fn serialized_storage<'a>( + reader: StructuredData<'a, '_>, + ) -> &'a mut Option<HashMap<ImageBitmapId, Self::Data>> { + match reader { + StructuredData::Reader(r) => &mut r.image_bitmaps, + StructuredData::Writer(w) => &mut w.image_bitmaps, + } + } +} + +impl Transferable for ImageBitmap { + type Index = ImageBitmapIndex; + type Data = SerializableImageBitmap; + + fn can_transfer(&self) -> bool { + if !self.origin_is_clean() || self.is_detached() { + return false; + } + true + } + + /// <https://html.spec.whatwg.org/multipage/#the-imagebitmap-interface:transfer-steps> + fn transfer(&self) -> Result<(ImageBitmapId, SerializableImageBitmap), ()> { + // Step 1. If value's origin-clean flag is not set, then throw a "DataCloneError" DOMException. + if !self.origin_is_clean() { + return Err(()); + } + + // If value has a [[Detached]] internal slot whose value is true, + // then throw a "DataCloneError" DOMException. + if self.is_detached() { + return Err(()); + } + + // Step 2. Set dataHolder.[[BitmapData]] to value's bitmap data. + // Step 3. Unset value's bitmap data. + let serialized = SerializableImageBitmap { + width: self.width, + height: self.height, + bitmap_data: self.bitmap_data.borrow_mut().take().unwrap(), + }; + + Ok((ImageBitmapId::new(), serialized)) + } + + /// <https://html.spec.whatwg.org/multipage/#the-imagebitmap-interface:transfer-receiving-steps> + fn transfer_receive( + owner: &GlobalScope, + _: ImageBitmapId, + serialized: SerializableImageBitmap, + ) -> Result<DomRoot<Self>, ()> { + let image_bitmap = + ImageBitmap::new(owner, serialized.width, serialized.height, CanGc::note()); + + // Step 1. Set value's bitmap data to serialized.[[BitmapData]]. + image_bitmap.set_bitmap_data(serialized.bitmap_data); + + Ok(image_bitmap) + } + + fn serialized_storage<'a>( + data: StructuredData<'a, '_>, + ) -> &'a mut Option<HashMap<ImageBitmapId, Self::Data>> { + match data { + StructuredData::Reader(r) => &mut r.transferred_image_bitmaps, + StructuredData::Writer(w) => &mut w.transferred_image_bitmaps, + } + } +} + impl ImageBitmapMethods<crate::DomTypeHolder> for ImageBitmap { /// <https://html.spec.whatwg.org/multipage/#dom-imagebitmap-height> fn Height(&self) -> u32 { diff --git a/components/script_bindings/codegen/CodegenRust.py b/components/script_bindings/codegen/CodegenRust.py index 20d6d30681e..37d62ff2e1b 100644 --- a/components/script_bindings/codegen/CodegenRust.py +++ b/components/script_bindings/codegen/CodegenRust.py @@ -39,6 +39,7 @@ from WebIDL import ( from Configuration import ( Configuration, Descriptor, + DescriptorProvider, MakeNativeName, MemberIsLegacyUnforgeable, getModuleFromObject, @@ -617,16 +618,16 @@ class JSToNativeConversionInfo(): def getJSToNativeConversionInfo(type, descriptorProvider, failureCode=None, - isDefinitelyObject=False, - isMember=False, + isDefinitelyObject: bool = False, + isMember: bool | str = False, isArgument=False, isAutoRooted=False, invalidEnumValueFatal=True, defaultValue=None, exceptionCode=None, - allowTreatNonObjectAsNull=False, + allowTreatNonObjectAsNull: bool = False, isCallbackReturnValue=False, - sourceDescription="value"): + sourceDescription="value") -> JSToNativeConversionInfo: """ Get a template for converting a JS value to a native object based on the given type and descriptor. If failureCode is given, then we're actually @@ -5071,7 +5072,7 @@ class CGConstant(CGThing): return f"pub const {name}: {const_type} = {value};\n" -def getUnionTypeTemplateVars(type, descriptorProvider): +def getUnionTypeTemplateVars(type, descriptorProvider: DescriptorProvider): if type.isGeckoInterface(): name = type.inner.identifier.name typeName = descriptorProvider.getDescriptor(name).returnType @@ -5108,6 +5109,12 @@ def getUnionTypeTemplateVars(type, descriptorProvider): elif type.isCallback(): name = type.name typeName = f"{name}<D>" + elif type.isUndefined(): + return { + "name": type.name, + "typeName": "()", + "jsConversion": CGGeneric("if value.is_undefined() { Ok(Some(())) } else { Ok(None) }") + } else: raise TypeError(f"Can't handle {type} in unions yet") @@ -5173,7 +5180,7 @@ impl{self.generic} Clone for {self.type}{self.genericSuffix} {{ def manualImpl(self, t, templateVars): if t == "Clone": return self.manualImplClone(templateVars) - raise f"Don't know how to impl {t} for union" + raise ValueError(f"Don't know how to impl {t} for union") def define(self): def getTypeWrapper(t): @@ -5330,31 +5337,44 @@ class CGUnionConversionStruct(CGThing): stringTypes = [t for t in memberTypes if t.isString() or t.isEnum()] numericTypes = [t for t in memberTypes if t.isNumeric()] booleanTypes = [t for t in memberTypes if t.isBoolean()] - if stringTypes or numericTypes or booleanTypes: + numUndefinedVariants = [t.isUndefined() for t in memberTypes].count(True) + if stringTypes or numericTypes or booleanTypes or numUndefinedVariants != 0: assert len(stringTypes) <= 1 assert len(numericTypes) <= 1 assert len(booleanTypes) <= 1 + assert numUndefinedVariants <= 1 def getStringOrPrimitiveConversion(memberType): typename = get_name(memberType) return CGGeneric(get_match(typename)) + other = [] stringConversion = list(map(getStringOrPrimitiveConversion, stringTypes)) numericConversion = list(map(getStringOrPrimitiveConversion, numericTypes)) booleanConversion = list(map(getStringOrPrimitiveConversion, booleanTypes)) + undefinedConversion = CGGeneric("return Ok(ConversionResult::Success(Self::Undefined(())));") + if stringConversion: if booleanConversion: other.append(CGIfWrapper("value.get().is_boolean()", booleanConversion[0])) if numericConversion: other.append(CGIfWrapper("value.get().is_number()", numericConversion[0])) + if numUndefinedVariants != 0: + other.append(CGIfWrapper("value.get().is_undefined()", undefinedConversion)) other.append(stringConversion[0]) elif numericConversion: if booleanConversion: other.append(CGIfWrapper("value.get().is_boolean()", booleanConversion[0])) + if numUndefinedVariants != 0: + other.append(CGIfWrapper("value.get().is_undefined()", undefinedConversion)) other.append(numericConversion[0]) - else: - assert booleanConversion + elif booleanConversion: + if numUndefinedVariants != 0: + other.append(CGIfWrapper("value.get().is_undefined()", undefinedConversion)) other.append(booleanConversion[0]) + else: + assert numUndefinedVariants != 0 + other.append(undefinedConversion) conversions.append(CGList(other, "\n\n")) conversions.append(CGGeneric( f'Ok(ConversionResult::Failure("argument could not be converted to any of: {", ".join(names)}".into()))' @@ -5376,6 +5396,10 @@ class CGUnionConversionStruct(CGThing): post="\n}") def try_method(self, t): + if t.isUndefined(): + # undefined does not require a conversion method, so we don't generate one + return CGGeneric("") + templateVars = getUnionTypeTemplateVars(t, self.descriptorProvider) actualType = templateVars["typeName"] if type_needs_tracing(t): @@ -7151,7 +7175,7 @@ impl{self.generic} Clone for {self.makeClassName(self.dictionary)}{self.genericS def manualImpl(self, t): if t == "Clone": return self.manualImplClone() - raise f"Don't know how to impl {t} for dicts." + raise ValueError(f"Don't know how to impl {t} for dicts.") def struct(self): d = self.dictionary diff --git a/components/script_bindings/webidls/ImageBitmap.webidl b/components/script_bindings/webidls/ImageBitmap.webidl index aaa35c67995..b9b811eb9bd 100644 --- a/components/script_bindings/webidls/ImageBitmap.webidl +++ b/components/script_bindings/webidls/ImageBitmap.webidl @@ -9,8 +9,7 @@ * You are granted a license to use, reproduce and create derivative works of this document. */ -//[Exposed=(Window,Worker), Serializable, Transferable] -[Exposed=(Window,Worker), Pref="dom_imagebitmap_enabled"] +[Exposed=(Window,Worker), Serializable, Transferable, Pref="dom_imagebitmap_enabled"] interface ImageBitmap { readonly attribute unsigned long width; readonly attribute unsigned long height; diff --git a/components/script_bindings/webidls/TestBinding.webidl b/components/script_bindings/webidls/TestBinding.webidl index f2c45313228..33ba2f41fbb 100644 --- a/components/script_bindings/webidls/TestBinding.webidl +++ b/components/script_bindings/webidls/TestBinding.webidl @@ -627,3 +627,6 @@ dictionary NotUsedAnyWhereElse {}; dictionary RecordFieldWithUnionInside { record<USVString, (USVString or NotUsedAnyWhereElse)> recordWithUnionField; }; + +// https://github.com/servo/servo/issues/28679 +typedef (USVString or undefined) UnionWithUndefinedVariant; diff --git a/components/shared/base/id.rs b/components/shared/base/id.rs index b6ad1b3de9b..a091311d237 100644 --- a/components/shared/base/id.rs +++ b/components/shared/base/id.rs @@ -371,6 +371,8 @@ namespace_id! {DomExceptionId, DomExceptionIndex, "DomException"} namespace_id! {HistoryStateId, HistoryStateIndex, "HistoryState"} +namespace_id! {ImageBitmapId, ImageBitmapIndex, "ImageBitmap"} + // We provide ids just for unit testing. pub const TEST_NAMESPACE: PipelineNamespaceId = PipelineNamespaceId(1234); #[allow(unsafe_code)] diff --git a/components/shared/constellation/structured_data/mod.rs b/components/shared/constellation/structured_data/mod.rs index 81e3849e476..3ea0d78eaf3 100644 --- a/components/shared/constellation/structured_data/mod.rs +++ b/components/shared/constellation/structured_data/mod.rs @@ -10,7 +10,7 @@ mod transferable; use std::collections::HashMap; -use base::id::{BlobId, DomExceptionId, DomPointId, MessagePortId}; +use base::id::{BlobId, DomExceptionId, DomPointId, ImageBitmapId, MessagePortId}; use log::warn; use malloc_size_of_derive::MallocSizeOf; use serde::{Deserialize, Serialize}; @@ -34,6 +34,10 @@ pub struct StructuredSerializedData { pub ports: Option<HashMap<MessagePortId, MessagePortImpl>>, /// Transform streams transferred objects. pub transform_streams: Option<HashMap<MessagePortId, TransformStreamData>>, + /// Serialized image bitmap objects. + pub image_bitmaps: Option<HashMap<ImageBitmapId, SerializableImageBitmap>>, + /// Transferred image bitmap objects. + pub transferred_image_bitmaps: Option<HashMap<ImageBitmapId, SerializableImageBitmap>>, } impl StructuredSerializedData { @@ -42,6 +46,7 @@ impl StructuredSerializedData { field.as_ref().is_some_and(|h| h.is_empty()) } match val { + Transferrable::ImageBitmap => is_field_empty(&self.transferred_image_bitmaps), Transferrable::MessagePort => is_field_empty(&self.ports), Transferrable::ReadableStream => is_field_empty(&self.ports), Transferrable::WritableStream => is_field_empty(&self.ports), diff --git a/components/shared/constellation/structured_data/serializable.rs b/components/shared/constellation/structured_data/serializable.rs index 22370087665..cbb932c52ec 100644 --- a/components/shared/constellation/structured_data/serializable.rs +++ b/components/shared/constellation/structured_data/serializable.rs @@ -11,7 +11,7 @@ use std::cell::RefCell; use std::collections::HashMap; use std::path::PathBuf; -use base::id::{BlobId, DomExceptionId, DomPointId}; +use base::id::{BlobId, DomExceptionId, DomPointId, ImageBitmapId}; use malloc_size_of_derive::MallocSizeOf; use net_traits::filemanager_thread::RelativePos; use serde::{Deserialize, Serialize}; @@ -47,6 +47,8 @@ pub enum Serializable { DomPointReadOnly, /// The `DOMException` interface. DomException, + /// The `ImageBitmap` interface. + ImageBitmap, } impl Serializable { @@ -62,6 +64,9 @@ impl Serializable { Serializable::DomException => { StructuredSerializedData::clone_all_of_type::<DomException> }, + Serializable::ImageBitmap => { + StructuredSerializedData::clone_all_of_type::<SerializableImageBitmap> + }, } } } @@ -312,3 +317,31 @@ impl BroadcastClone for DomException { Some(self.clone()) } } + +#[derive(Clone, Debug, Deserialize, MallocSizeOf, Serialize)] +/// A serializable version of the ImageBitmap interface. +pub struct SerializableImageBitmap { + pub width: u32, + pub height: u32, + pub bitmap_data: Vec<u8>, +} + +impl BroadcastClone for SerializableImageBitmap { + type Id = ImageBitmapId; + + fn source( + data: &StructuredSerializedData, + ) -> &Option<std::collections::HashMap<Self::Id, Self>> { + &data.image_bitmaps + } + + fn destination( + data: &mut StructuredSerializedData, + ) -> &mut Option<std::collections::HashMap<Self::Id, Self>> { + &mut data.image_bitmaps + } + + fn clone_for_broadcast(&self) -> Option<Self> { + Some(self.clone()) + } +} diff --git a/components/shared/constellation/structured_data/transferable.rs b/components/shared/constellation/structured_data/transferable.rs index 3210a41a538..bce10420182 100644 --- a/components/shared/constellation/structured_data/transferable.rs +++ b/components/shared/constellation/structured_data/transferable.rs @@ -24,6 +24,8 @@ pub struct TransformStreamData { /// All the DOM interfaces that can be transferred. #[derive(Clone, Copy, Debug, EnumIter)] pub enum Transferrable { + /// The `ImageBitmap` interface. + ImageBitmap, /// The `MessagePort` interface. MessagePort, /// The `ReadableStream` interface. diff --git a/support/openharmony/entry/src/main/ets/pages/Index.ets b/support/openharmony/entry/src/main/ets/pages/Index.ets index 1d84d4478db..9c6cb06537b 100644 --- a/support/openharmony/entry/src/main/ets/pages/Index.ets +++ b/support/openharmony/entry/src/main/ets/pages/Index.ets @@ -76,7 +76,10 @@ struct Index { } build() { - Column() { + // We originally use `Column()` here, but for some reason the column + // extends beyond the edge of the screen. This does not happen with + // Flex. + Flex({ direction: FlexDirection.Column}) { Row() { Button('⇦').backgroundColor(Color.White) .fontColor(Color.Black) diff --git a/tests/wpt/meta/MANIFEST.json b/tests/wpt/meta/MANIFEST.json index 8f64883c6be..59a4cc1cfd8 100644 --- a/tests/wpt/meta/MANIFEST.json +++ b/tests/wpt/meta/MANIFEST.json @@ -119171,6 +119171,19 @@ {} ] ], + "z-index-020.html": [ + "34a7272a2541e779c487fe3501d6e6cd3f751f51", + [ + null, + [ + [ + "/css/reference/ref-filled-green-200px-square.html", + "==" + ] + ], + {} + ] + ], "z-index-abspos-001.xht": [ "63a44d15a7dce6e1a2df6124ff1064d0a68392ab", [ diff --git a/tests/wpt/meta/css/CSS2/backgrounds/background-bg-pos-206.xht.ini b/tests/wpt/meta/css/CSS2/backgrounds/background-bg-pos-206.xht.ini deleted file mode 100644 index 07839d4c3ae..00000000000 --- a/tests/wpt/meta/css/CSS2/backgrounds/background-bg-pos-206.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[background-bg-pos-206.xht] - expected: FAIL diff --git a/tests/wpt/meta/html/browsers/history/the-history-interface/001.html.ini b/tests/wpt/meta/html/browsers/history/the-history-interface/001.html.ini deleted file mode 100644 index 1c088011cf9..00000000000 --- a/tests/wpt/meta/html/browsers/history/the-history-interface/001.html.ini +++ /dev/null @@ -1,6 +0,0 @@ -[001.html] - type: testharness - disabled: https://github.com/servo/servo/issues/12580 - [history.length should update when setting location.hash] - 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 4234bcb2133..7652318fd58 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 @@ -5,15 +5,9 @@ [Serialize ImageBitmap created from an HTMLVideoElement] expected: FAIL - [Serialize ImageBitmap created from an HTMLCanvasElement] - expected: FAIL - [Serialize ImageBitmap created from an HTMLVideoElement from a data URL] expected: FAIL - [Serialize ImageBitmap created from an OffscreenCanvas] - expected: FAIL - [Serialize ImageBitmap created from a vector HTMLImageElement] 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 cff84fd3a26..20be1f3b9e5 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 @@ -11,12 +11,6 @@ [Transfer ImageBitmap created from a Blob] expected: FAIL - [Transfer ImageBitmap created from an HTMLCanvasElement] - expected: FAIL - - [Transfer ImageBitmap created from an OffscreenCanvas] - expected: FAIL - [Transfer ImageBitmap created from a bitmap HTMLImageElement] expected: FAIL diff --git a/tests/wpt/meta/html/canvas/offscreen/manual/filter/offscreencanvas.filter.w.html.ini b/tests/wpt/meta/html/canvas/offscreen/manual/filter/offscreencanvas.filter.w.html.ini index 82b9523635b..6e55bcfc0d1 100644 --- a/tests/wpt/meta/html/canvas/offscreen/manual/filter/offscreencanvas.filter.w.html.ini +++ b/tests/wpt/meta/html/canvas/offscreen/manual/filter/offscreencanvas.filter.w.html.ini @@ -1,3 +1,4 @@ [offscreencanvas.filter.w.html] + expected: ERROR [offscreencanvas] - expected: FAIL + expected: TIMEOUT diff --git a/tests/wpt/meta/html/dom/reflection-embedded.html.ini b/tests/wpt/meta/html/dom/reflection-embedded.html.ini index 3a3b8bdb55e..679057f2794 100644 --- a/tests/wpt/meta/html/dom/reflection-embedded.html.ini +++ b/tests/wpt/meta/html/dom/reflection-embedded.html.ini @@ -1,3 +1,8802 @@ [reflection-embedded.html] - type: testharness - disabled: https://github.com/servo/servo/issues/11100 + [picture.accessKey: typeof IDL attribute] + expected: FAIL + + [picture.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [picture.accessKey: setAttribute() to ""] + expected: FAIL + + [picture.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [picture.accessKey: setAttribute() to undefined] + expected: FAIL + + [picture.accessKey: setAttribute() to 7] + expected: FAIL + + [picture.accessKey: setAttribute() to 1.5] + expected: FAIL + + [picture.accessKey: setAttribute() to "5%"] + expected: FAIL + + [picture.accessKey: setAttribute() to "+100"] + expected: FAIL + + [picture.accessKey: setAttribute() to ".5"] + expected: FAIL + + [picture.accessKey: setAttribute() to true] + expected: FAIL + + [picture.accessKey: setAttribute() to false] + expected: FAIL + + [picture.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [picture.accessKey: setAttribute() to NaN] + expected: FAIL + + [picture.accessKey: setAttribute() to Infinity] + expected: FAIL + + [picture.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [picture.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [picture.accessKey: setAttribute() to null] + expected: FAIL + + [picture.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [picture.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [picture.accessKey: IDL set to ""] + expected: FAIL + + [picture.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [picture.accessKey: IDL set to undefined] + expected: FAIL + + [picture.accessKey: IDL set to 7] + expected: FAIL + + [picture.accessKey: IDL set to 1.5] + expected: FAIL + + [picture.accessKey: IDL set to "5%"] + expected: FAIL + + [picture.accessKey: IDL set to "+100"] + expected: FAIL + + [picture.accessKey: IDL set to ".5"] + expected: FAIL + + [picture.accessKey: IDL set to true] + expected: FAIL + + [picture.accessKey: IDL set to false] + expected: FAIL + + [picture.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [picture.accessKey: IDL set to NaN] + expected: FAIL + + [picture.accessKey: IDL set to Infinity] + expected: FAIL + + [picture.accessKey: IDL set to -Infinity] + expected: FAIL + + [picture.accessKey: IDL set to "\\0"] + expected: FAIL + + [picture.accessKey: IDL set to null] + expected: FAIL + + [picture.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [picture.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [picture.tabIndex: typeof IDL attribute] + expected: FAIL + + [picture.tabIndex: setAttribute() to -36] + expected: FAIL + + [picture.tabIndex: setAttribute() to -1] + expected: FAIL + + [picture.tabIndex: setAttribute() to 0] + expected: FAIL + + [picture.tabIndex: setAttribute() to 1] + expected: FAIL + + [picture.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [picture.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [picture.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [picture.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [picture.tabIndex: setAttribute() to "0"] + expected: FAIL + + [picture.tabIndex: setAttribute() to "1"] + expected: FAIL + + [picture.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [picture.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [picture.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [picture.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [picture.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [picture.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [picture.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [picture.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [picture.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [picture.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [picture.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [picture.tabIndex: IDL set to -36] + expected: FAIL + + [picture.tabIndex: IDL set to -1] + expected: FAIL + + [picture.tabIndex: IDL set to 0] + expected: FAIL + + [picture.tabIndex: IDL set to 1] + expected: FAIL + + [picture.tabIndex: IDL set to 2147483647] + expected: FAIL + + [picture.tabIndex: IDL set to -2147483648] + expected: FAIL + + [img.accessKey: typeof IDL attribute] + expected: FAIL + + [img.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [img.accessKey: setAttribute() to ""] + expected: FAIL + + [img.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [img.accessKey: setAttribute() to undefined] + expected: FAIL + + [img.accessKey: setAttribute() to 7] + expected: FAIL + + [img.accessKey: setAttribute() to 1.5] + expected: FAIL + + [img.accessKey: setAttribute() to "5%"] + expected: FAIL + + [img.accessKey: setAttribute() to "+100"] + expected: FAIL + + [img.accessKey: setAttribute() to ".5"] + expected: FAIL + + [img.accessKey: setAttribute() to true] + expected: FAIL + + [img.accessKey: setAttribute() to false] + expected: FAIL + + [img.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [img.accessKey: setAttribute() to NaN] + expected: FAIL + + [img.accessKey: setAttribute() to Infinity] + expected: FAIL + + [img.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [img.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [img.accessKey: setAttribute() to null] + expected: FAIL + + [img.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [img.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [img.accessKey: IDL set to ""] + expected: FAIL + + [img.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [img.accessKey: IDL set to undefined] + expected: FAIL + + [img.accessKey: IDL set to 7] + expected: FAIL + + [img.accessKey: IDL set to 1.5] + expected: FAIL + + [img.accessKey: IDL set to "5%"] + expected: FAIL + + [img.accessKey: IDL set to "+100"] + expected: FAIL + + [img.accessKey: IDL set to ".5"] + expected: FAIL + + [img.accessKey: IDL set to true] + expected: FAIL + + [img.accessKey: IDL set to false] + expected: FAIL + + [img.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [img.accessKey: IDL set to NaN] + expected: FAIL + + [img.accessKey: IDL set to Infinity] + expected: FAIL + + [img.accessKey: IDL set to -Infinity] + expected: FAIL + + [img.accessKey: IDL set to "\\0"] + expected: FAIL + + [img.accessKey: IDL set to null] + expected: FAIL + + [img.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [img.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [img.tabIndex: typeof IDL attribute] + expected: FAIL + + [img.tabIndex: setAttribute() to -36] + expected: FAIL + + [img.tabIndex: setAttribute() to -1] + expected: FAIL + + [img.tabIndex: setAttribute() to 0] + expected: FAIL + + [img.tabIndex: setAttribute() to 1] + expected: FAIL + + [img.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [img.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [img.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [img.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [img.tabIndex: setAttribute() to "0"] + expected: FAIL + + [img.tabIndex: setAttribute() to "1"] + expected: FAIL + + [img.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [img.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [img.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [img.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [img.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [img.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [img.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [img.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [img.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [img.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [img.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [img.tabIndex: IDL set to -36] + expected: FAIL + + [img.tabIndex: IDL set to -1] + expected: FAIL + + [img.tabIndex: IDL set to 0] + expected: FAIL + + [img.tabIndex: IDL set to 1] + expected: FAIL + + [img.tabIndex: IDL set to 2147483647] + expected: FAIL + + [img.tabIndex: IDL set to -2147483648] + expected: FAIL + + [img.srcset: setAttribute() to ""] + expected: FAIL + + [img.srcset: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [img.srcset: setAttribute() to undefined] + expected: FAIL + + [img.srcset: setAttribute() to 7] + expected: FAIL + + [img.srcset: setAttribute() to 1.5] + expected: FAIL + + [img.srcset: setAttribute() to "5%"] + expected: FAIL + + [img.srcset: setAttribute() to "+100"] + expected: FAIL + + [img.srcset: setAttribute() to ".5"] + expected: FAIL + + [img.srcset: setAttribute() to true] + expected: FAIL + + [img.srcset: setAttribute() to false] + expected: FAIL + + [img.srcset: setAttribute() to object "[object Object\]"] + expected: FAIL + + [img.srcset: setAttribute() to NaN] + expected: FAIL + + [img.srcset: setAttribute() to Infinity] + expected: FAIL + + [img.srcset: setAttribute() to -Infinity] + expected: FAIL + + [img.srcset: setAttribute() to "\\0"] + expected: FAIL + + [img.srcset: setAttribute() to null] + expected: FAIL + + [img.srcset: setAttribute() to object "test-toString"] + expected: FAIL + + [img.srcset: setAttribute() to object "test-valueOf"] + expected: FAIL + + [img.srcset: IDL set to ""] + expected: FAIL + + [img.srcset: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [img.srcset: IDL set to undefined] + expected: FAIL + + [img.srcset: IDL set to 7] + expected: FAIL + + [img.srcset: IDL set to 1.5] + expected: FAIL + + [img.srcset: IDL set to "5%"] + expected: FAIL + + [img.srcset: IDL set to "+100"] + expected: FAIL + + [img.srcset: IDL set to ".5"] + expected: FAIL + + [img.srcset: IDL set to true] + expected: FAIL + + [img.srcset: IDL set to false] + expected: FAIL + + [img.srcset: IDL set to object "[object Object\]"] + expected: FAIL + + [img.srcset: IDL set to NaN] + expected: FAIL + + [img.srcset: IDL set to Infinity] + expected: FAIL + + [img.srcset: IDL set to -Infinity] + expected: FAIL + + [img.srcset: IDL set to "\\0"] + expected: FAIL + + [img.srcset: IDL set to null] + expected: FAIL + + [img.srcset: IDL set to object "test-toString"] + expected: FAIL + + [img.srcset: IDL set to object "test-valueOf"] + expected: FAIL + + [img.referrerPolicy: IDL set to ""] + expected: FAIL + + [img.referrerPolicy: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [img.referrerPolicy: IDL set to undefined] + expected: FAIL + + [img.referrerPolicy: IDL set to 7] + expected: FAIL + + [img.referrerPolicy: IDL set to 1.5] + expected: FAIL + + [img.referrerPolicy: IDL set to "5%"] + expected: FAIL + + [img.referrerPolicy: IDL set to "+100"] + expected: FAIL + + [img.referrerPolicy: IDL set to ".5"] + expected: FAIL + + [img.referrerPolicy: IDL set to true] + expected: FAIL + + [img.referrerPolicy: IDL set to false] + expected: FAIL + + [img.referrerPolicy: IDL set to object "[object Object\]"] + expected: FAIL + + [img.referrerPolicy: IDL set to NaN] + expected: FAIL + + [img.referrerPolicy: IDL set to Infinity] + expected: FAIL + + [img.referrerPolicy: IDL set to -Infinity] + expected: FAIL + + [img.referrerPolicy: IDL set to "\\0"] + expected: FAIL + + [img.referrerPolicy: IDL set to object "test-toString"] + expected: FAIL + + [img.referrerPolicy: IDL set to object "test-valueOf"] + expected: FAIL + + [img.referrerPolicy: IDL set to "xno-referrer"] + expected: FAIL + + [img.referrerPolicy: IDL set to "no-referrer\\0"] + expected: FAIL + + [img.referrerPolicy: IDL set to "o-referrer"] + expected: FAIL + + [img.referrerPolicy: IDL set to "NO-REFERRER"] + expected: FAIL + + [img.referrerPolicy: IDL set to "xno-referrer-when-downgrade"] + expected: FAIL + + [img.referrerPolicy: IDL set to "no-referrer-when-downgrade\\0"] + expected: FAIL + + [img.referrerPolicy: IDL set to "o-referrer-when-downgrade"] + expected: FAIL + + [img.referrerPolicy: IDL set to "NO-REFERRER-WHEN-DOWNGRADE"] + expected: FAIL + + [img.referrerPolicy: IDL set to "xsame-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "same-origin\\0"] + expected: FAIL + + [img.referrerPolicy: IDL set to "ame-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "SAME-ORIGIN"] + expected: FAIL + + [img.referrerPolicy: IDL set to "ſame-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "xorigin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "origin\\0"] + expected: FAIL + + [img.referrerPolicy: IDL set to "rigin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "ORIGIN"] + expected: FAIL + + [img.referrerPolicy: IDL set to "xstrict-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "strict-origin\\0"] + expected: FAIL + + [img.referrerPolicy: IDL set to "trict-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "STRICT-ORIGIN"] + expected: FAIL + + [img.referrerPolicy: IDL set to "ſtrict-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "xorigin-when-cross-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "origin-when-cross-origin\\0"] + expected: FAIL + + [img.referrerPolicy: IDL set to "rigin-when-cross-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "ORIGIN-WHEN-CROSS-ORIGIN"] + expected: FAIL + + [img.referrerPolicy: IDL set to "origin-when-croſſ-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "xstrict-origin-when-cross-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "strict-origin-when-cross-origin\\0"] + expected: FAIL + + [img.referrerPolicy: IDL set to "trict-origin-when-cross-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "STRICT-ORIGIN-WHEN-CROSS-ORIGIN"] + expected: FAIL + + [img.referrerPolicy: IDL set to "ſtrict-origin-when-croſſ-origin"] + expected: FAIL + + [img.referrerPolicy: IDL set to "xunsafe-url"] + expected: FAIL + + [img.referrerPolicy: IDL set to "unsafe-url\\0"] + expected: FAIL + + [img.referrerPolicy: IDL set to "nsafe-url"] + expected: FAIL + + [img.referrerPolicy: IDL set to "UNSAFE-URL"] + expected: FAIL + + [img.referrerPolicy: IDL set to "unſafe-url"] + expected: FAIL + + [img.decoding: typeof IDL attribute] + expected: FAIL + + [img.decoding: IDL get with DOM attribute unset] + expected: FAIL + + [img.decoding: setAttribute() to ""] + expected: FAIL + + [img.decoding: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [img.decoding: setAttribute() to undefined] + expected: FAIL + + [img.decoding: setAttribute() to 7] + expected: FAIL + + [img.decoding: setAttribute() to 1.5] + expected: FAIL + + [img.decoding: setAttribute() to "5%"] + expected: FAIL + + [img.decoding: setAttribute() to "+100"] + expected: FAIL + + [img.decoding: setAttribute() to ".5"] + expected: FAIL + + [img.decoding: setAttribute() to true] + expected: FAIL + + [img.decoding: setAttribute() to false] + expected: FAIL + + [img.decoding: setAttribute() to object "[object Object\]"] + expected: FAIL + + [img.decoding: setAttribute() to NaN] + expected: FAIL + + [img.decoding: setAttribute() to Infinity] + expected: FAIL + + [img.decoding: setAttribute() to -Infinity] + expected: FAIL + + [img.decoding: setAttribute() to "\\0"] + expected: FAIL + + [img.decoding: setAttribute() to null] + expected: FAIL + + [img.decoding: setAttribute() to object "test-toString"] + expected: FAIL + + [img.decoding: setAttribute() to object "test-valueOf"] + expected: FAIL + + [img.decoding: setAttribute() to "async"] + expected: FAIL + + [img.decoding: setAttribute() to "xasync"] + expected: FAIL + + [img.decoding: setAttribute() to "async\\0"] + expected: FAIL + + [img.decoding: setAttribute() to "ASYNC"] + expected: FAIL + + [img.decoding: setAttribute() to "aſync"] + expected: FAIL + + [img.decoding: setAttribute() to "sync"] + expected: FAIL + + [img.decoding: setAttribute() to "xsync"] + expected: FAIL + + [img.decoding: setAttribute() to "sync\\0"] + expected: FAIL + + [img.decoding: setAttribute() to "ync"] + expected: FAIL + + [img.decoding: setAttribute() to "SYNC"] + expected: FAIL + + [img.decoding: setAttribute() to "ſync"] + expected: FAIL + + [img.decoding: setAttribute() to "auto"] + expected: FAIL + + [img.decoding: setAttribute() to "xauto"] + expected: FAIL + + [img.decoding: setAttribute() to "auto\\0"] + expected: FAIL + + [img.decoding: setAttribute() to "uto"] + expected: FAIL + + [img.decoding: setAttribute() to "AUTO"] + expected: FAIL + + [img.decoding: IDL set to ""] + expected: FAIL + + [img.decoding: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [img.decoding: IDL set to undefined] + expected: FAIL + + [img.decoding: IDL set to 7] + expected: FAIL + + [img.decoding: IDL set to 1.5] + expected: FAIL + + [img.decoding: IDL set to "5%"] + expected: FAIL + + [img.decoding: IDL set to "+100"] + expected: FAIL + + [img.decoding: IDL set to ".5"] + expected: FAIL + + [img.decoding: IDL set to true] + expected: FAIL + + [img.decoding: IDL set to false] + expected: FAIL + + [img.decoding: IDL set to object "[object Object\]"] + expected: FAIL + + [img.decoding: IDL set to NaN] + expected: FAIL + + [img.decoding: IDL set to Infinity] + expected: FAIL + + [img.decoding: IDL set to -Infinity] + expected: FAIL + + [img.decoding: IDL set to "\\0"] + expected: FAIL + + [img.decoding: IDL set to null] + expected: FAIL + + [img.decoding: IDL set to object "test-toString"] + expected: FAIL + + [img.decoding: IDL set to object "test-valueOf"] + expected: FAIL + + [img.decoding: IDL set to "async"] + expected: FAIL + + [img.decoding: IDL set to "xasync"] + expected: FAIL + + [img.decoding: IDL set to "async\\0"] + expected: FAIL + + [img.decoding: IDL set to "ASYNC"] + expected: FAIL + + [img.decoding: IDL set to "aſync"] + expected: FAIL + + [img.decoding: IDL set to "sync"] + expected: FAIL + + [img.decoding: IDL set to "xsync"] + expected: FAIL + + [img.decoding: IDL set to "sync\\0"] + expected: FAIL + + [img.decoding: IDL set to "ync"] + expected: FAIL + + [img.decoding: IDL set to "SYNC"] + expected: FAIL + + [img.decoding: IDL set to "ſync"] + expected: FAIL + + [img.decoding: IDL set to "auto"] + expected: FAIL + + [img.decoding: IDL set to "xauto"] + expected: FAIL + + [img.decoding: IDL set to "auto\\0"] + expected: FAIL + + [img.decoding: IDL set to "uto"] + expected: FAIL + + [img.decoding: IDL set to "AUTO"] + expected: FAIL + + [img.lowsrc: typeof IDL attribute] + expected: FAIL + + [img.lowsrc: IDL get with DOM attribute unset] + expected: FAIL + + [img.lowsrc: setAttribute() to ""] + expected: FAIL + + [img.lowsrc: setAttribute() to " foo "] + expected: FAIL + + [img.lowsrc: setAttribute() to "http://site.example/"] + expected: FAIL + + [img.lowsrc: setAttribute() to "//site.example/path???@#l"] + expected: FAIL + + [img.lowsrc: setAttribute() to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [img.lowsrc: setAttribute() to undefined] + expected: FAIL + + [img.lowsrc: setAttribute() to 7] + expected: FAIL + + [img.lowsrc: setAttribute() to 1.5] + expected: FAIL + + [img.lowsrc: setAttribute() to "5%"] + expected: FAIL + + [img.lowsrc: setAttribute() to "+100"] + expected: FAIL + + [img.lowsrc: setAttribute() to ".5"] + expected: FAIL + + [img.lowsrc: setAttribute() to true] + expected: FAIL + + [img.lowsrc: setAttribute() to false] + expected: FAIL + + [img.lowsrc: setAttribute() to object "[object Object\]"] + expected: FAIL + + [img.lowsrc: setAttribute() to NaN] + expected: FAIL + + [img.lowsrc: setAttribute() to Infinity] + expected: FAIL + + [img.lowsrc: setAttribute() to -Infinity] + expected: FAIL + + [img.lowsrc: setAttribute() to "\\0"] + expected: FAIL + + [img.lowsrc: setAttribute() to null] + expected: FAIL + + [img.lowsrc: setAttribute() to object "test-toString"] + expected: FAIL + + [img.lowsrc: setAttribute() to object "test-valueOf"] + expected: FAIL + + [img.lowsrc: IDL set to ""] + expected: FAIL + + [img.lowsrc: IDL set to " foo "] + expected: FAIL + + [img.lowsrc: IDL set to "http://site.example/"] + expected: FAIL + + [img.lowsrc: IDL set to "//site.example/path???@#l"] + expected: FAIL + + [img.lowsrc: IDL set to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [img.lowsrc: IDL set to undefined] + expected: FAIL + + [img.lowsrc: IDL set to 7] + expected: FAIL + + [img.lowsrc: IDL set to 1.5] + expected: FAIL + + [img.lowsrc: IDL set to "5%"] + expected: FAIL + + [img.lowsrc: IDL set to "+100"] + expected: FAIL + + [img.lowsrc: IDL set to ".5"] + expected: FAIL + + [img.lowsrc: IDL set to true] + expected: FAIL + + [img.lowsrc: IDL set to false] + expected: FAIL + + [img.lowsrc: IDL set to object "[object Object\]"] + expected: FAIL + + [img.lowsrc: IDL set to NaN] + expected: FAIL + + [img.lowsrc: IDL set to Infinity] + expected: FAIL + + [img.lowsrc: IDL set to -Infinity] + expected: FAIL + + [img.lowsrc: IDL set to "\\0"] + expected: FAIL + + [img.lowsrc: IDL set to null] + expected: FAIL + + [img.lowsrc: IDL set to object "test-toString"] + expected: FAIL + + [img.lowsrc: IDL set to object "test-valueOf"] + expected: FAIL + + [img.longDesc: setAttribute() to ""] + expected: FAIL + + [img.longDesc: setAttribute() to " foo "] + expected: FAIL + + [img.longDesc: setAttribute() to "//site.example/path???@#l"] + expected: FAIL + + [img.longDesc: setAttribute() to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [img.longDesc: setAttribute() to undefined] + expected: FAIL + + [img.longDesc: setAttribute() to 7] + expected: FAIL + + [img.longDesc: setAttribute() to 1.5] + expected: FAIL + + [img.longDesc: setAttribute() to "5%"] + expected: FAIL + + [img.longDesc: setAttribute() to "+100"] + expected: FAIL + + [img.longDesc: setAttribute() to ".5"] + expected: FAIL + + [img.longDesc: setAttribute() to true] + expected: FAIL + + [img.longDesc: setAttribute() to false] + expected: FAIL + + [img.longDesc: setAttribute() to object "[object Object\]"] + expected: FAIL + + [img.longDesc: setAttribute() to NaN] + expected: FAIL + + [img.longDesc: setAttribute() to Infinity] + expected: FAIL + + [img.longDesc: setAttribute() to -Infinity] + expected: FAIL + + [img.longDesc: setAttribute() to "\\0"] + expected: FAIL + + [img.longDesc: setAttribute() to null] + expected: FAIL + + [img.longDesc: setAttribute() to object "test-toString"] + expected: FAIL + + [img.longDesc: setAttribute() to object "test-valueOf"] + expected: FAIL + + [img.longDesc: IDL set to ""] + expected: FAIL + + [img.longDesc: IDL set to " foo "] + expected: FAIL + + [img.longDesc: IDL set to "//site.example/path???@#l"] + expected: FAIL + + [img.longDesc: IDL set to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [img.longDesc: IDL set to undefined] + expected: FAIL + + [img.longDesc: IDL set to 7] + expected: FAIL + + [img.longDesc: IDL set to 1.5] + expected: FAIL + + [img.longDesc: IDL set to "5%"] + expected: FAIL + + [img.longDesc: IDL set to "+100"] + expected: FAIL + + [img.longDesc: IDL set to ".5"] + expected: FAIL + + [img.longDesc: IDL set to true] + expected: FAIL + + [img.longDesc: IDL set to false] + expected: FAIL + + [img.longDesc: IDL set to object "[object Object\]"] + expected: FAIL + + [img.longDesc: IDL set to NaN] + expected: FAIL + + [img.longDesc: IDL set to Infinity] + expected: FAIL + + [img.longDesc: IDL set to -Infinity] + expected: FAIL + + [img.longDesc: IDL set to "\\0"] + expected: FAIL + + [img.longDesc: IDL set to null] + expected: FAIL + + [img.longDesc: IDL set to object "test-toString"] + expected: FAIL + + [img.longDesc: IDL set to object "test-valueOf"] + expected: FAIL + + [iframe.accessKey: typeof IDL attribute] + expected: FAIL + + [iframe.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [iframe.accessKey: setAttribute() to ""] + expected: FAIL + + [iframe.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [iframe.accessKey: setAttribute() to undefined] + expected: FAIL + + [iframe.accessKey: setAttribute() to 7] + expected: FAIL + + [iframe.accessKey: setAttribute() to 1.5] + expected: FAIL + + [iframe.accessKey: setAttribute() to "5%"] + expected: FAIL + + [iframe.accessKey: setAttribute() to "+100"] + expected: FAIL + + [iframe.accessKey: setAttribute() to ".5"] + expected: FAIL + + [iframe.accessKey: setAttribute() to true] + expected: FAIL + + [iframe.accessKey: setAttribute() to false] + expected: FAIL + + [iframe.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [iframe.accessKey: setAttribute() to NaN] + expected: FAIL + + [iframe.accessKey: setAttribute() to Infinity] + expected: FAIL + + [iframe.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [iframe.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [iframe.accessKey: setAttribute() to null] + expected: FAIL + + [iframe.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [iframe.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [iframe.accessKey: IDL set to ""] + expected: FAIL + + [iframe.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [iframe.accessKey: IDL set to undefined] + expected: FAIL + + [iframe.accessKey: IDL set to 7] + expected: FAIL + + [iframe.accessKey: IDL set to 1.5] + expected: FAIL + + [iframe.accessKey: IDL set to "5%"] + expected: FAIL + + [iframe.accessKey: IDL set to "+100"] + expected: FAIL + + [iframe.accessKey: IDL set to ".5"] + expected: FAIL + + [iframe.accessKey: IDL set to true] + expected: FAIL + + [iframe.accessKey: IDL set to false] + expected: FAIL + + [iframe.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [iframe.accessKey: IDL set to NaN] + expected: FAIL + + [iframe.accessKey: IDL set to Infinity] + expected: FAIL + + [iframe.accessKey: IDL set to -Infinity] + expected: FAIL + + [iframe.accessKey: IDL set to "\\0"] + expected: FAIL + + [iframe.accessKey: IDL set to null] + expected: FAIL + + [iframe.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [iframe.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [iframe.tabIndex: typeof IDL attribute] + expected: FAIL + + [iframe.tabIndex: setAttribute() to -36] + expected: FAIL + + [iframe.tabIndex: setAttribute() to -1] + expected: FAIL + + [iframe.tabIndex: setAttribute() to 0] + expected: FAIL + + [iframe.tabIndex: setAttribute() to 1] + expected: FAIL + + [iframe.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [iframe.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [iframe.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to "0"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to "1"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [iframe.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [iframe.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [iframe.tabIndex: IDL set to -36] + expected: FAIL + + [iframe.tabIndex: IDL set to -1] + expected: FAIL + + [iframe.tabIndex: IDL set to 0] + expected: FAIL + + [iframe.tabIndex: IDL set to 1] + expected: FAIL + + [iframe.tabIndex: IDL set to 2147483647] + expected: FAIL + + [iframe.tabIndex: IDL set to -2147483648] + expected: FAIL + + [iframe.allowUserMedia: typeof IDL attribute] + expected: FAIL + + [iframe.allowUserMedia: IDL get with DOM attribute unset] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to ""] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to " foo "] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to undefined] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to null] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to 7] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to 1.5] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to "5%"] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to "+100"] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to ".5"] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to true] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to false] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to object "[object Object\]"] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to NaN] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to Infinity] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to -Infinity] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to "\\0"] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to object "test-toString"] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to object "test-valueOf"] + expected: FAIL + + [iframe.allowUserMedia: setAttribute() to "allowUserMedia"] + expected: FAIL + + [iframe.allowUserMedia: IDL set to ""] + expected: FAIL + + [iframe.allowUserMedia: IDL set to " foo "] + expected: FAIL + + [iframe.allowUserMedia: IDL set to undefined] + expected: FAIL + + [iframe.allowUserMedia: IDL set to null] + expected: FAIL + + [iframe.allowUserMedia: IDL set to 7] + expected: FAIL + + [iframe.allowUserMedia: IDL set to 1.5] + expected: FAIL + + [iframe.allowUserMedia: IDL set to "5%"] + expected: FAIL + + [iframe.allowUserMedia: IDL set to "+100"] + expected: FAIL + + [iframe.allowUserMedia: IDL set to ".5"] + expected: FAIL + + [iframe.allowUserMedia: IDL set to false] + expected: FAIL + + [iframe.allowUserMedia: IDL set to object "[object Object\]"] + expected: FAIL + + [iframe.allowUserMedia: IDL set to NaN] + expected: FAIL + + [iframe.allowUserMedia: IDL set to Infinity] + expected: FAIL + + [iframe.allowUserMedia: IDL set to -Infinity] + expected: FAIL + + [iframe.allowUserMedia: IDL set to "\\0"] + expected: FAIL + + [iframe.allowUserMedia: IDL set to object "test-toString"] + expected: FAIL + + [iframe.allowUserMedia: IDL set to object "test-valueOf"] + expected: FAIL + + [iframe.delegateStickyUserActivation: typeof IDL attribute] + expected: FAIL + + [iframe.delegateStickyUserActivation: setAttribute() to "vibration"] + expected: FAIL + + [iframe.delegateStickyUserActivation: setAttribute() to "VIBRATION"] + expected: FAIL + + [iframe.delegateStickyUserActivation: setAttribute() to "media"] + expected: FAIL + + [iframe.delegateStickyUserActivation: setAttribute() to "MEDIA"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to ""] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to undefined] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to 7] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to 1.5] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "5%"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "+100"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to ".5"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to true] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to false] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to object "[object Object\]"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to NaN] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to Infinity] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to -Infinity] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "\\0"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to object "test-toString"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to object "test-valueOf"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "vibration"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "xvibration"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "vibration\\0"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "ibration"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "VIBRATION"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "media"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "xmedia"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "media\\0"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "edia"] + expected: FAIL + + [iframe.delegateStickyUserActivation: IDL set to "MEDIA"] + expected: FAIL + + [iframe.align: typeof IDL attribute] + expected: FAIL + + [iframe.align: IDL get with DOM attribute unset] + expected: FAIL + + [iframe.align: setAttribute() to ""] + expected: FAIL + + [iframe.align: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [iframe.align: setAttribute() to undefined] + expected: FAIL + + [iframe.align: setAttribute() to 7] + expected: FAIL + + [iframe.align: setAttribute() to 1.5] + expected: FAIL + + [iframe.align: setAttribute() to "5%"] + expected: FAIL + + [iframe.align: setAttribute() to "+100"] + expected: FAIL + + [iframe.align: setAttribute() to ".5"] + expected: FAIL + + [iframe.align: setAttribute() to true] + expected: FAIL + + [iframe.align: setAttribute() to false] + expected: FAIL + + [iframe.align: setAttribute() to object "[object Object\]"] + expected: FAIL + + [iframe.align: setAttribute() to NaN] + expected: FAIL + + [iframe.align: setAttribute() to Infinity] + expected: FAIL + + [iframe.align: setAttribute() to -Infinity] + expected: FAIL + + [iframe.align: setAttribute() to "\\0"] + expected: FAIL + + [iframe.align: setAttribute() to null] + expected: FAIL + + [iframe.align: setAttribute() to object "test-toString"] + expected: FAIL + + [iframe.align: setAttribute() to object "test-valueOf"] + expected: FAIL + + [iframe.align: IDL set to ""] + expected: FAIL + + [iframe.align: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [iframe.align: IDL set to undefined] + expected: FAIL + + [iframe.align: IDL set to 7] + expected: FAIL + + [iframe.align: IDL set to 1.5] + expected: FAIL + + [iframe.align: IDL set to "5%"] + expected: FAIL + + [iframe.align: IDL set to "+100"] + expected: FAIL + + [iframe.align: IDL set to ".5"] + expected: FAIL + + [iframe.align: IDL set to true] + expected: FAIL + + [iframe.align: IDL set to false] + expected: FAIL + + [iframe.align: IDL set to object "[object Object\]"] + expected: FAIL + + [iframe.align: IDL set to NaN] + expected: FAIL + + [iframe.align: IDL set to Infinity] + expected: FAIL + + [iframe.align: IDL set to -Infinity] + expected: FAIL + + [iframe.align: IDL set to "\\0"] + expected: FAIL + + [iframe.align: IDL set to null] + expected: FAIL + + [iframe.align: IDL set to object "test-toString"] + expected: FAIL + + [iframe.align: IDL set to object "test-valueOf"] + expected: FAIL + + [iframe.scrolling: typeof IDL attribute] + expected: FAIL + + [iframe.scrolling: IDL get with DOM attribute unset] + expected: FAIL + + [iframe.scrolling: setAttribute() to ""] + expected: FAIL + + [iframe.scrolling: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [iframe.scrolling: setAttribute() to undefined] + expected: FAIL + + [iframe.scrolling: setAttribute() to 7] + expected: FAIL + + [iframe.scrolling: setAttribute() to 1.5] + expected: FAIL + + [iframe.scrolling: setAttribute() to "5%"] + expected: FAIL + + [iframe.scrolling: setAttribute() to "+100"] + expected: FAIL + + [iframe.scrolling: setAttribute() to ".5"] + expected: FAIL + + [iframe.scrolling: setAttribute() to true] + expected: FAIL + + [iframe.scrolling: setAttribute() to false] + expected: FAIL + + [iframe.scrolling: setAttribute() to object "[object Object\]"] + expected: FAIL + + [iframe.scrolling: setAttribute() to NaN] + expected: FAIL + + [iframe.scrolling: setAttribute() to Infinity] + expected: FAIL + + [iframe.scrolling: setAttribute() to -Infinity] + expected: FAIL + + [iframe.scrolling: setAttribute() to "\\0"] + expected: FAIL + + [iframe.scrolling: setAttribute() to null] + expected: FAIL + + [iframe.scrolling: setAttribute() to object "test-toString"] + expected: FAIL + + [iframe.scrolling: setAttribute() to object "test-valueOf"] + expected: FAIL + + [iframe.scrolling: IDL set to ""] + expected: FAIL + + [iframe.scrolling: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [iframe.scrolling: IDL set to undefined] + expected: FAIL + + [iframe.scrolling: IDL set to 7] + expected: FAIL + + [iframe.scrolling: IDL set to 1.5] + expected: FAIL + + [iframe.scrolling: IDL set to "5%"] + expected: FAIL + + [iframe.scrolling: IDL set to "+100"] + expected: FAIL + + [iframe.scrolling: IDL set to ".5"] + expected: FAIL + + [iframe.scrolling: IDL set to true] + expected: FAIL + + [iframe.scrolling: IDL set to false] + expected: FAIL + + [iframe.scrolling: IDL set to object "[object Object\]"] + expected: FAIL + + [iframe.scrolling: IDL set to NaN] + expected: FAIL + + [iframe.scrolling: IDL set to Infinity] + expected: FAIL + + [iframe.scrolling: IDL set to -Infinity] + expected: FAIL + + [iframe.scrolling: IDL set to "\\0"] + expected: FAIL + + [iframe.scrolling: IDL set to null] + expected: FAIL + + [iframe.scrolling: IDL set to object "test-toString"] + expected: FAIL + + [iframe.scrolling: IDL set to object "test-valueOf"] + expected: FAIL + + [iframe.longDesc: typeof IDL attribute] + expected: FAIL + + [iframe.longDesc: IDL get with DOM attribute unset] + expected: FAIL + + [iframe.longDesc: setAttribute() to ""] + expected: FAIL + + [iframe.longDesc: setAttribute() to " foo "] + expected: FAIL + + [iframe.longDesc: setAttribute() to "http://site.example/"] + expected: FAIL + + [iframe.longDesc: setAttribute() to "//site.example/path???@#l"] + expected: FAIL + + [iframe.longDesc: setAttribute() to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [iframe.longDesc: setAttribute() to undefined] + expected: FAIL + + [iframe.longDesc: setAttribute() to 7] + expected: FAIL + + [iframe.longDesc: setAttribute() to 1.5] + expected: FAIL + + [iframe.longDesc: setAttribute() to "5%"] + expected: FAIL + + [iframe.longDesc: setAttribute() to "+100"] + expected: FAIL + + [iframe.longDesc: setAttribute() to ".5"] + expected: FAIL + + [iframe.longDesc: setAttribute() to true] + expected: FAIL + + [iframe.longDesc: setAttribute() to false] + expected: FAIL + + [iframe.longDesc: setAttribute() to object "[object Object\]"] + expected: FAIL + + [iframe.longDesc: setAttribute() to NaN] + expected: FAIL + + [iframe.longDesc: setAttribute() to Infinity] + expected: FAIL + + [iframe.longDesc: setAttribute() to -Infinity] + expected: FAIL + + [iframe.longDesc: setAttribute() to "\\0"] + expected: FAIL + + [iframe.longDesc: setAttribute() to null] + expected: FAIL + + [iframe.longDesc: setAttribute() to object "test-toString"] + expected: FAIL + + [iframe.longDesc: setAttribute() to object "test-valueOf"] + expected: FAIL + + [iframe.longDesc: IDL set to ""] + expected: FAIL + + [iframe.longDesc: IDL set to " foo "] + expected: FAIL + + [iframe.longDesc: IDL set to "http://site.example/"] + expected: FAIL + + [iframe.longDesc: IDL set to "//site.example/path???@#l"] + expected: FAIL + + [iframe.longDesc: IDL set to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [iframe.longDesc: IDL set to undefined] + expected: FAIL + + [iframe.longDesc: IDL set to 7] + expected: FAIL + + [iframe.longDesc: IDL set to 1.5] + expected: FAIL + + [iframe.longDesc: IDL set to "5%"] + expected: FAIL + + [iframe.longDesc: IDL set to "+100"] + expected: FAIL + + [iframe.longDesc: IDL set to ".5"] + expected: FAIL + + [iframe.longDesc: IDL set to true] + expected: FAIL + + [iframe.longDesc: IDL set to false] + expected: FAIL + + [iframe.longDesc: IDL set to object "[object Object\]"] + expected: FAIL + + [iframe.longDesc: IDL set to NaN] + expected: FAIL + + [iframe.longDesc: IDL set to Infinity] + expected: FAIL + + [iframe.longDesc: IDL set to -Infinity] + expected: FAIL + + [iframe.longDesc: IDL set to "\\0"] + expected: FAIL + + [iframe.longDesc: IDL set to null] + expected: FAIL + + [iframe.longDesc: IDL set to object "test-toString"] + expected: FAIL + + [iframe.longDesc: IDL set to object "test-valueOf"] + expected: FAIL + + [iframe.marginHeight: typeof IDL attribute] + expected: FAIL + + [iframe.marginHeight: IDL get with DOM attribute unset] + expected: FAIL + + [iframe.marginHeight: setAttribute() to ""] + expected: FAIL + + [iframe.marginHeight: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [iframe.marginHeight: setAttribute() to undefined] + expected: FAIL + + [iframe.marginHeight: setAttribute() to 7] + expected: FAIL + + [iframe.marginHeight: setAttribute() to 1.5] + expected: FAIL + + [iframe.marginHeight: setAttribute() to "5%"] + expected: FAIL + + [iframe.marginHeight: setAttribute() to "+100"] + expected: FAIL + + [iframe.marginHeight: setAttribute() to ".5"] + expected: FAIL + + [iframe.marginHeight: setAttribute() to true] + expected: FAIL + + [iframe.marginHeight: setAttribute() to false] + expected: FAIL + + [iframe.marginHeight: setAttribute() to object "[object Object\]"] + expected: FAIL + + [iframe.marginHeight: setAttribute() to NaN] + expected: FAIL + + [iframe.marginHeight: setAttribute() to Infinity] + expected: FAIL + + [iframe.marginHeight: setAttribute() to -Infinity] + expected: FAIL + + [iframe.marginHeight: setAttribute() to "\\0"] + expected: FAIL + + [iframe.marginHeight: setAttribute() to null] + expected: FAIL + + [iframe.marginHeight: setAttribute() to object "test-toString"] + expected: FAIL + + [iframe.marginHeight: setAttribute() to object "test-valueOf"] + expected: FAIL + + [iframe.marginHeight: IDL set to ""] + expected: FAIL + + [iframe.marginHeight: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [iframe.marginHeight: IDL set to undefined] + expected: FAIL + + [iframe.marginHeight: IDL set to 7] + expected: FAIL + + [iframe.marginHeight: IDL set to 1.5] + expected: FAIL + + [iframe.marginHeight: IDL set to "5%"] + expected: FAIL + + [iframe.marginHeight: IDL set to "+100"] + expected: FAIL + + [iframe.marginHeight: IDL set to ".5"] + expected: FAIL + + [iframe.marginHeight: IDL set to true] + expected: FAIL + + [iframe.marginHeight: IDL set to false] + expected: FAIL + + [iframe.marginHeight: IDL set to object "[object Object\]"] + expected: FAIL + + [iframe.marginHeight: IDL set to NaN] + expected: FAIL + + [iframe.marginHeight: IDL set to Infinity] + expected: FAIL + + [iframe.marginHeight: IDL set to -Infinity] + expected: FAIL + + [iframe.marginHeight: IDL set to "\\0"] + expected: FAIL + + [iframe.marginHeight: IDL set to null] + expected: FAIL + + [iframe.marginHeight: IDL set to object "test-toString"] + expected: FAIL + + [iframe.marginHeight: IDL set to object "test-valueOf"] + expected: FAIL + + [iframe.marginWidth: typeof IDL attribute] + expected: FAIL + + [iframe.marginWidth: IDL get with DOM attribute unset] + expected: FAIL + + [iframe.marginWidth: setAttribute() to ""] + expected: FAIL + + [iframe.marginWidth: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [iframe.marginWidth: setAttribute() to undefined] + expected: FAIL + + [iframe.marginWidth: setAttribute() to 7] + expected: FAIL + + [iframe.marginWidth: setAttribute() to 1.5] + expected: FAIL + + [iframe.marginWidth: setAttribute() to "5%"] + expected: FAIL + + [iframe.marginWidth: setAttribute() to "+100"] + expected: FAIL + + [iframe.marginWidth: setAttribute() to ".5"] + expected: FAIL + + [iframe.marginWidth: setAttribute() to true] + expected: FAIL + + [iframe.marginWidth: setAttribute() to false] + expected: FAIL + + [iframe.marginWidth: setAttribute() to object "[object Object\]"] + expected: FAIL + + [iframe.marginWidth: setAttribute() to NaN] + expected: FAIL + + [iframe.marginWidth: setAttribute() to Infinity] + expected: FAIL + + [iframe.marginWidth: setAttribute() to -Infinity] + expected: FAIL + + [iframe.marginWidth: setAttribute() to "\\0"] + expected: FAIL + + [iframe.marginWidth: setAttribute() to null] + expected: FAIL + + [iframe.marginWidth: setAttribute() to object "test-toString"] + expected: FAIL + + [iframe.marginWidth: setAttribute() to object "test-valueOf"] + expected: FAIL + + [iframe.marginWidth: IDL set to ""] + expected: FAIL + + [iframe.marginWidth: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [iframe.marginWidth: IDL set to undefined] + expected: FAIL + + [iframe.marginWidth: IDL set to 7] + expected: FAIL + + [iframe.marginWidth: IDL set to 1.5] + expected: FAIL + + [iframe.marginWidth: IDL set to "5%"] + expected: FAIL + + [iframe.marginWidth: IDL set to "+100"] + expected: FAIL + + [iframe.marginWidth: IDL set to ".5"] + expected: FAIL + + [iframe.marginWidth: IDL set to true] + expected: FAIL + + [iframe.marginWidth: IDL set to false] + expected: FAIL + + [iframe.marginWidth: IDL set to object "[object Object\]"] + expected: FAIL + + [iframe.marginWidth: IDL set to NaN] + expected: FAIL + + [iframe.marginWidth: IDL set to Infinity] + expected: FAIL + + [iframe.marginWidth: IDL set to -Infinity] + expected: FAIL + + [iframe.marginWidth: IDL set to "\\0"] + expected: FAIL + + [iframe.marginWidth: IDL set to null] + expected: FAIL + + [iframe.marginWidth: IDL set to object "test-toString"] + expected: FAIL + + [iframe.marginWidth: IDL set to object "test-valueOf"] + expected: FAIL + + [embed.accessKey: typeof IDL attribute] + expected: FAIL + + [embed.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [embed.accessKey: setAttribute() to ""] + expected: FAIL + + [embed.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.accessKey: setAttribute() to undefined] + expected: FAIL + + [embed.accessKey: setAttribute() to 7] + expected: FAIL + + [embed.accessKey: setAttribute() to 1.5] + expected: FAIL + + [embed.accessKey: setAttribute() to "5%"] + expected: FAIL + + [embed.accessKey: setAttribute() to "+100"] + expected: FAIL + + [embed.accessKey: setAttribute() to ".5"] + expected: FAIL + + [embed.accessKey: setAttribute() to true] + expected: FAIL + + [embed.accessKey: setAttribute() to false] + expected: FAIL + + [embed.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [embed.accessKey: setAttribute() to NaN] + expected: FAIL + + [embed.accessKey: setAttribute() to Infinity] + expected: FAIL + + [embed.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [embed.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [embed.accessKey: setAttribute() to null] + expected: FAIL + + [embed.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [embed.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [embed.accessKey: IDL set to ""] + expected: FAIL + + [embed.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.accessKey: IDL set to undefined] + expected: FAIL + + [embed.accessKey: IDL set to 7] + expected: FAIL + + [embed.accessKey: IDL set to 1.5] + expected: FAIL + + [embed.accessKey: IDL set to "5%"] + expected: FAIL + + [embed.accessKey: IDL set to "+100"] + expected: FAIL + + [embed.accessKey: IDL set to ".5"] + expected: FAIL + + [embed.accessKey: IDL set to true] + expected: FAIL + + [embed.accessKey: IDL set to false] + expected: FAIL + + [embed.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [embed.accessKey: IDL set to NaN] + expected: FAIL + + [embed.accessKey: IDL set to Infinity] + expected: FAIL + + [embed.accessKey: IDL set to -Infinity] + expected: FAIL + + [embed.accessKey: IDL set to "\\0"] + expected: FAIL + + [embed.accessKey: IDL set to null] + expected: FAIL + + [embed.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [embed.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [embed.tabIndex: typeof IDL attribute] + expected: FAIL + + [embed.tabIndex: setAttribute() to -36] + expected: FAIL + + [embed.tabIndex: setAttribute() to -1] + expected: FAIL + + [embed.tabIndex: setAttribute() to 0] + expected: FAIL + + [embed.tabIndex: setAttribute() to 1] + expected: FAIL + + [embed.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [embed.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [embed.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [embed.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [embed.tabIndex: setAttribute() to "0"] + expected: FAIL + + [embed.tabIndex: setAttribute() to "1"] + expected: FAIL + + [embed.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [embed.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [embed.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [embed.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [embed.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [embed.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [embed.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [embed.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [embed.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [embed.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [embed.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [embed.tabIndex: IDL set to -36] + expected: FAIL + + [embed.tabIndex: IDL set to -1] + expected: FAIL + + [embed.tabIndex: IDL set to 0] + expected: FAIL + + [embed.tabIndex: IDL set to 1] + expected: FAIL + + [embed.tabIndex: IDL set to 2147483647] + expected: FAIL + + [embed.tabIndex: IDL set to -2147483648] + expected: FAIL + + [embed.src: typeof IDL attribute] + expected: FAIL + + [embed.src: IDL get with DOM attribute unset] + expected: FAIL + + [embed.src: setAttribute() to ""] + expected: FAIL + + [embed.src: setAttribute() to " foo "] + expected: FAIL + + [embed.src: setAttribute() to "http://site.example/"] + expected: FAIL + + [embed.src: setAttribute() to "//site.example/path???@#l"] + expected: FAIL + + [embed.src: setAttribute() to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [embed.src: setAttribute() to undefined] + expected: FAIL + + [embed.src: setAttribute() to 7] + expected: FAIL + + [embed.src: setAttribute() to 1.5] + expected: FAIL + + [embed.src: setAttribute() to "5%"] + expected: FAIL + + [embed.src: setAttribute() to "+100"] + expected: FAIL + + [embed.src: setAttribute() to ".5"] + expected: FAIL + + [embed.src: setAttribute() to true] + expected: FAIL + + [embed.src: setAttribute() to false] + expected: FAIL + + [embed.src: setAttribute() to object "[object Object\]"] + expected: FAIL + + [embed.src: setAttribute() to NaN] + expected: FAIL + + [embed.src: setAttribute() to Infinity] + expected: FAIL + + [embed.src: setAttribute() to -Infinity] + expected: FAIL + + [embed.src: setAttribute() to "\\0"] + expected: FAIL + + [embed.src: setAttribute() to null] + expected: FAIL + + [embed.src: setAttribute() to object "test-toString"] + expected: FAIL + + [embed.src: setAttribute() to object "test-valueOf"] + expected: FAIL + + [embed.src: IDL set to ""] + expected: FAIL + + [embed.src: IDL set to " foo "] + expected: FAIL + + [embed.src: IDL set to "http://site.example/"] + expected: FAIL + + [embed.src: IDL set to "//site.example/path???@#l"] + expected: FAIL + + [embed.src: IDL set to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [embed.src: IDL set to undefined] + expected: FAIL + + [embed.src: IDL set to 7] + expected: FAIL + + [embed.src: IDL set to 1.5] + expected: FAIL + + [embed.src: IDL set to "5%"] + expected: FAIL + + [embed.src: IDL set to "+100"] + expected: FAIL + + [embed.src: IDL set to ".5"] + expected: FAIL + + [embed.src: IDL set to true] + expected: FAIL + + [embed.src: IDL set to false] + expected: FAIL + + [embed.src: IDL set to object "[object Object\]"] + expected: FAIL + + [embed.src: IDL set to NaN] + expected: FAIL + + [embed.src: IDL set to Infinity] + expected: FAIL + + [embed.src: IDL set to -Infinity] + expected: FAIL + + [embed.src: IDL set to "\\0"] + expected: FAIL + + [embed.src: IDL set to null] + expected: FAIL + + [embed.src: IDL set to object "test-toString"] + expected: FAIL + + [embed.src: IDL set to object "test-valueOf"] + expected: FAIL + + [embed.type: typeof IDL attribute] + expected: FAIL + + [embed.type: IDL get with DOM attribute unset] + expected: FAIL + + [embed.type: setAttribute() to ""] + expected: FAIL + + [embed.type: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.type: setAttribute() to undefined] + expected: FAIL + + [embed.type: setAttribute() to 7] + expected: FAIL + + [embed.type: setAttribute() to 1.5] + expected: FAIL + + [embed.type: setAttribute() to "5%"] + expected: FAIL + + [embed.type: setAttribute() to "+100"] + expected: FAIL + + [embed.type: setAttribute() to ".5"] + expected: FAIL + + [embed.type: setAttribute() to true] + expected: FAIL + + [embed.type: setAttribute() to false] + expected: FAIL + + [embed.type: setAttribute() to object "[object Object\]"] + expected: FAIL + + [embed.type: setAttribute() to NaN] + expected: FAIL + + [embed.type: setAttribute() to Infinity] + expected: FAIL + + [embed.type: setAttribute() to -Infinity] + expected: FAIL + + [embed.type: setAttribute() to "\\0"] + expected: FAIL + + [embed.type: setAttribute() to null] + expected: FAIL + + [embed.type: setAttribute() to object "test-toString"] + expected: FAIL + + [embed.type: setAttribute() to object "test-valueOf"] + expected: FAIL + + [embed.type: IDL set to ""] + expected: FAIL + + [embed.type: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.type: IDL set to undefined] + expected: FAIL + + [embed.type: IDL set to 7] + expected: FAIL + + [embed.type: IDL set to 1.5] + expected: FAIL + + [embed.type: IDL set to "5%"] + expected: FAIL + + [embed.type: IDL set to "+100"] + expected: FAIL + + [embed.type: IDL set to ".5"] + expected: FAIL + + [embed.type: IDL set to true] + expected: FAIL + + [embed.type: IDL set to false] + expected: FAIL + + [embed.type: IDL set to object "[object Object\]"] + expected: FAIL + + [embed.type: IDL set to NaN] + expected: FAIL + + [embed.type: IDL set to Infinity] + expected: FAIL + + [embed.type: IDL set to -Infinity] + expected: FAIL + + [embed.type: IDL set to "\\0"] + expected: FAIL + + [embed.type: IDL set to null] + expected: FAIL + + [embed.type: IDL set to object "test-toString"] + expected: FAIL + + [embed.type: IDL set to object "test-valueOf"] + expected: FAIL + + [embed.width: typeof IDL attribute] + expected: FAIL + + [embed.width: IDL get with DOM attribute unset] + expected: FAIL + + [embed.width: setAttribute() to ""] + expected: FAIL + + [embed.width: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.width: setAttribute() to undefined] + expected: FAIL + + [embed.width: setAttribute() to 7] + expected: FAIL + + [embed.width: setAttribute() to 1.5] + expected: FAIL + + [embed.width: setAttribute() to "5%"] + expected: FAIL + + [embed.width: setAttribute() to "+100"] + expected: FAIL + + [embed.width: setAttribute() to ".5"] + expected: FAIL + + [embed.width: setAttribute() to true] + expected: FAIL + + [embed.width: setAttribute() to false] + expected: FAIL + + [embed.width: setAttribute() to object "[object Object\]"] + expected: FAIL + + [embed.width: setAttribute() to NaN] + expected: FAIL + + [embed.width: setAttribute() to Infinity] + expected: FAIL + + [embed.width: setAttribute() to -Infinity] + expected: FAIL + + [embed.width: setAttribute() to "\\0"] + expected: FAIL + + [embed.width: setAttribute() to null] + expected: FAIL + + [embed.width: setAttribute() to object "test-toString"] + expected: FAIL + + [embed.width: setAttribute() to object "test-valueOf"] + expected: FAIL + + [embed.width: IDL set to ""] + expected: FAIL + + [embed.width: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.width: IDL set to undefined] + expected: FAIL + + [embed.width: IDL set to 7] + expected: FAIL + + [embed.width: IDL set to 1.5] + expected: FAIL + + [embed.width: IDL set to "5%"] + expected: FAIL + + [embed.width: IDL set to "+100"] + expected: FAIL + + [embed.width: IDL set to ".5"] + expected: FAIL + + [embed.width: IDL set to true] + expected: FAIL + + [embed.width: IDL set to false] + expected: FAIL + + [embed.width: IDL set to object "[object Object\]"] + expected: FAIL + + [embed.width: IDL set to NaN] + expected: FAIL + + [embed.width: IDL set to Infinity] + expected: FAIL + + [embed.width: IDL set to -Infinity] + expected: FAIL + + [embed.width: IDL set to "\\0"] + expected: FAIL + + [embed.width: IDL set to null] + expected: FAIL + + [embed.width: IDL set to object "test-toString"] + expected: FAIL + + [embed.width: IDL set to object "test-valueOf"] + expected: FAIL + + [embed.height: typeof IDL attribute] + expected: FAIL + + [embed.height: IDL get with DOM attribute unset] + expected: FAIL + + [embed.height: setAttribute() to ""] + expected: FAIL + + [embed.height: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.height: setAttribute() to undefined] + expected: FAIL + + [embed.height: setAttribute() to 7] + expected: FAIL + + [embed.height: setAttribute() to 1.5] + expected: FAIL + + [embed.height: setAttribute() to "5%"] + expected: FAIL + + [embed.height: setAttribute() to "+100"] + expected: FAIL + + [embed.height: setAttribute() to ".5"] + expected: FAIL + + [embed.height: setAttribute() to true] + expected: FAIL + + [embed.height: setAttribute() to false] + expected: FAIL + + [embed.height: setAttribute() to object "[object Object\]"] + expected: FAIL + + [embed.height: setAttribute() to NaN] + expected: FAIL + + [embed.height: setAttribute() to Infinity] + expected: FAIL + + [embed.height: setAttribute() to -Infinity] + expected: FAIL + + [embed.height: setAttribute() to "\\0"] + expected: FAIL + + [embed.height: setAttribute() to null] + expected: FAIL + + [embed.height: setAttribute() to object "test-toString"] + expected: FAIL + + [embed.height: setAttribute() to object "test-valueOf"] + expected: FAIL + + [embed.height: IDL set to ""] + expected: FAIL + + [embed.height: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.height: IDL set to undefined] + expected: FAIL + + [embed.height: IDL set to 7] + expected: FAIL + + [embed.height: IDL set to 1.5] + expected: FAIL + + [embed.height: IDL set to "5%"] + expected: FAIL + + [embed.height: IDL set to "+100"] + expected: FAIL + + [embed.height: IDL set to ".5"] + expected: FAIL + + [embed.height: IDL set to true] + expected: FAIL + + [embed.height: IDL set to false] + expected: FAIL + + [embed.height: IDL set to object "[object Object\]"] + expected: FAIL + + [embed.height: IDL set to NaN] + expected: FAIL + + [embed.height: IDL set to Infinity] + expected: FAIL + + [embed.height: IDL set to -Infinity] + expected: FAIL + + [embed.height: IDL set to "\\0"] + expected: FAIL + + [embed.height: IDL set to null] + expected: FAIL + + [embed.height: IDL set to object "test-toString"] + expected: FAIL + + [embed.height: IDL set to object "test-valueOf"] + expected: FAIL + + [embed.align: typeof IDL attribute] + expected: FAIL + + [embed.align: IDL get with DOM attribute unset] + expected: FAIL + + [embed.align: setAttribute() to ""] + expected: FAIL + + [embed.align: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.align: setAttribute() to undefined] + expected: FAIL + + [embed.align: setAttribute() to 7] + expected: FAIL + + [embed.align: setAttribute() to 1.5] + expected: FAIL + + [embed.align: setAttribute() to "5%"] + expected: FAIL + + [embed.align: setAttribute() to "+100"] + expected: FAIL + + [embed.align: setAttribute() to ".5"] + expected: FAIL + + [embed.align: setAttribute() to true] + expected: FAIL + + [embed.align: setAttribute() to false] + expected: FAIL + + [embed.align: setAttribute() to object "[object Object\]"] + expected: FAIL + + [embed.align: setAttribute() to NaN] + expected: FAIL + + [embed.align: setAttribute() to Infinity] + expected: FAIL + + [embed.align: setAttribute() to -Infinity] + expected: FAIL + + [embed.align: setAttribute() to "\\0"] + expected: FAIL + + [embed.align: setAttribute() to null] + expected: FAIL + + [embed.align: setAttribute() to object "test-toString"] + expected: FAIL + + [embed.align: setAttribute() to object "test-valueOf"] + expected: FAIL + + [embed.align: IDL set to ""] + expected: FAIL + + [embed.align: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.align: IDL set to undefined] + expected: FAIL + + [embed.align: IDL set to 7] + expected: FAIL + + [embed.align: IDL set to 1.5] + expected: FAIL + + [embed.align: IDL set to "5%"] + expected: FAIL + + [embed.align: IDL set to "+100"] + expected: FAIL + + [embed.align: IDL set to ".5"] + expected: FAIL + + [embed.align: IDL set to true] + expected: FAIL + + [embed.align: IDL set to false] + expected: FAIL + + [embed.align: IDL set to object "[object Object\]"] + expected: FAIL + + [embed.align: IDL set to NaN] + expected: FAIL + + [embed.align: IDL set to Infinity] + expected: FAIL + + [embed.align: IDL set to -Infinity] + expected: FAIL + + [embed.align: IDL set to "\\0"] + expected: FAIL + + [embed.align: IDL set to null] + expected: FAIL + + [embed.align: IDL set to object "test-toString"] + expected: FAIL + + [embed.align: IDL set to object "test-valueOf"] + expected: FAIL + + [embed.name: typeof IDL attribute] + expected: FAIL + + [embed.name: IDL get with DOM attribute unset] + expected: FAIL + + [embed.name: setAttribute() to ""] + expected: FAIL + + [embed.name: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.name: setAttribute() to undefined] + expected: FAIL + + [embed.name: setAttribute() to 7] + expected: FAIL + + [embed.name: setAttribute() to 1.5] + expected: FAIL + + [embed.name: setAttribute() to "5%"] + expected: FAIL + + [embed.name: setAttribute() to "+100"] + expected: FAIL + + [embed.name: setAttribute() to ".5"] + expected: FAIL + + [embed.name: setAttribute() to true] + expected: FAIL + + [embed.name: setAttribute() to false] + expected: FAIL + + [embed.name: setAttribute() to object "[object Object\]"] + expected: FAIL + + [embed.name: setAttribute() to NaN] + expected: FAIL + + [embed.name: setAttribute() to Infinity] + expected: FAIL + + [embed.name: setAttribute() to -Infinity] + expected: FAIL + + [embed.name: setAttribute() to "\\0"] + expected: FAIL + + [embed.name: setAttribute() to null] + expected: FAIL + + [embed.name: setAttribute() to object "test-toString"] + expected: FAIL + + [embed.name: setAttribute() to object "test-valueOf"] + expected: FAIL + + [embed.name: IDL set to ""] + expected: FAIL + + [embed.name: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [embed.name: IDL set to undefined] + expected: FAIL + + [embed.name: IDL set to 7] + expected: FAIL + + [embed.name: IDL set to 1.5] + expected: FAIL + + [embed.name: IDL set to "5%"] + expected: FAIL + + [embed.name: IDL set to "+100"] + expected: FAIL + + [embed.name: IDL set to ".5"] + expected: FAIL + + [embed.name: IDL set to true] + expected: FAIL + + [embed.name: IDL set to false] + expected: FAIL + + [embed.name: IDL set to object "[object Object\]"] + expected: FAIL + + [embed.name: IDL set to NaN] + expected: FAIL + + [embed.name: IDL set to Infinity] + expected: FAIL + + [embed.name: IDL set to -Infinity] + expected: FAIL + + [embed.name: IDL set to "\\0"] + expected: FAIL + + [embed.name: IDL set to null] + expected: FAIL + + [embed.name: IDL set to object "test-toString"] + expected: FAIL + + [embed.name: IDL set to object "test-valueOf"] + expected: FAIL + + [object.accessKey: typeof IDL attribute] + expected: FAIL + + [object.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [object.accessKey: setAttribute() to ""] + expected: FAIL + + [object.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.accessKey: setAttribute() to undefined] + expected: FAIL + + [object.accessKey: setAttribute() to 7] + expected: FAIL + + [object.accessKey: setAttribute() to 1.5] + expected: FAIL + + [object.accessKey: setAttribute() to "5%"] + expected: FAIL + + [object.accessKey: setAttribute() to "+100"] + expected: FAIL + + [object.accessKey: setAttribute() to ".5"] + expected: FAIL + + [object.accessKey: setAttribute() to true] + expected: FAIL + + [object.accessKey: setAttribute() to false] + expected: FAIL + + [object.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.accessKey: setAttribute() to NaN] + expected: FAIL + + [object.accessKey: setAttribute() to Infinity] + expected: FAIL + + [object.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [object.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [object.accessKey: setAttribute() to null] + expected: FAIL + + [object.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [object.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.accessKey: IDL set to ""] + expected: FAIL + + [object.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.accessKey: IDL set to undefined] + expected: FAIL + + [object.accessKey: IDL set to 7] + expected: FAIL + + [object.accessKey: IDL set to 1.5] + expected: FAIL + + [object.accessKey: IDL set to "5%"] + expected: FAIL + + [object.accessKey: IDL set to "+100"] + expected: FAIL + + [object.accessKey: IDL set to ".5"] + expected: FAIL + + [object.accessKey: IDL set to true] + expected: FAIL + + [object.accessKey: IDL set to false] + expected: FAIL + + [object.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [object.accessKey: IDL set to NaN] + expected: FAIL + + [object.accessKey: IDL set to Infinity] + expected: FAIL + + [object.accessKey: IDL set to -Infinity] + expected: FAIL + + [object.accessKey: IDL set to "\\0"] + expected: FAIL + + [object.accessKey: IDL set to null] + expected: FAIL + + [object.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [object.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [object.tabIndex: typeof IDL attribute] + expected: FAIL + + [object.tabIndex: setAttribute() to -36] + expected: FAIL + + [object.tabIndex: setAttribute() to -1] + expected: FAIL + + [object.tabIndex: setAttribute() to 0] + expected: FAIL + + [object.tabIndex: setAttribute() to 1] + expected: FAIL + + [object.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [object.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [object.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [object.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [object.tabIndex: setAttribute() to "0"] + expected: FAIL + + [object.tabIndex: setAttribute() to "1"] + expected: FAIL + + [object.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [object.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [object.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [object.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [object.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [object.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [object.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [object.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [object.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [object.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [object.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [object.tabIndex: IDL set to -36] + expected: FAIL + + [object.tabIndex: IDL set to -1] + expected: FAIL + + [object.tabIndex: IDL set to 0] + expected: FAIL + + [object.tabIndex: IDL set to 1] + expected: FAIL + + [object.tabIndex: IDL set to 2147483647] + expected: FAIL + + [object.tabIndex: IDL set to -2147483648] + expected: FAIL + + [object.data: typeof IDL attribute] + expected: FAIL + + [object.data: IDL get with DOM attribute unset] + expected: FAIL + + [object.data: setAttribute() to ""] + expected: FAIL + + [object.data: setAttribute() to " foo "] + expected: FAIL + + [object.data: setAttribute() to "http://site.example/"] + expected: FAIL + + [object.data: setAttribute() to "//site.example/path???@#l"] + expected: FAIL + + [object.data: setAttribute() to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [object.data: setAttribute() to undefined] + expected: FAIL + + [object.data: setAttribute() to 7] + expected: FAIL + + [object.data: setAttribute() to 1.5] + expected: FAIL + + [object.data: setAttribute() to "5%"] + expected: FAIL + + [object.data: setAttribute() to "+100"] + expected: FAIL + + [object.data: setAttribute() to ".5"] + expected: FAIL + + [object.data: setAttribute() to true] + expected: FAIL + + [object.data: setAttribute() to false] + expected: FAIL + + [object.data: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.data: setAttribute() to NaN] + expected: FAIL + + [object.data: setAttribute() to Infinity] + expected: FAIL + + [object.data: setAttribute() to -Infinity] + expected: FAIL + + [object.data: setAttribute() to "\\0"] + expected: FAIL + + [object.data: setAttribute() to null] + expected: FAIL + + [object.data: setAttribute() to object "test-toString"] + expected: FAIL + + [object.data: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.data: IDL set to ""] + expected: FAIL + + [object.data: IDL set to " foo "] + expected: FAIL + + [object.data: IDL set to "http://site.example/"] + expected: FAIL + + [object.data: IDL set to "//site.example/path???@#l"] + expected: FAIL + + [object.data: IDL set to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [object.data: IDL set to undefined] + expected: FAIL + + [object.data: IDL set to 7] + expected: FAIL + + [object.data: IDL set to 1.5] + expected: FAIL + + [object.data: IDL set to "5%"] + expected: FAIL + + [object.data: IDL set to "+100"] + expected: FAIL + + [object.data: IDL set to ".5"] + expected: FAIL + + [object.data: IDL set to true] + expected: FAIL + + [object.data: IDL set to false] + expected: FAIL + + [object.data: IDL set to object "[object Object\]"] + expected: FAIL + + [object.data: IDL set to NaN] + expected: FAIL + + [object.data: IDL set to Infinity] + expected: FAIL + + [object.data: IDL set to -Infinity] + expected: FAIL + + [object.data: IDL set to "\\0"] + expected: FAIL + + [object.data: IDL set to null] + expected: FAIL + + [object.data: IDL set to object "test-toString"] + expected: FAIL + + [object.data: IDL set to object "test-valueOf"] + expected: FAIL + + [object.name: typeof IDL attribute] + expected: FAIL + + [object.name: IDL get with DOM attribute unset] + expected: FAIL + + [object.name: setAttribute() to ""] + expected: FAIL + + [object.name: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.name: setAttribute() to undefined] + expected: FAIL + + [object.name: setAttribute() to 7] + expected: FAIL + + [object.name: setAttribute() to 1.5] + expected: FAIL + + [object.name: setAttribute() to "5%"] + expected: FAIL + + [object.name: setAttribute() to "+100"] + expected: FAIL + + [object.name: setAttribute() to ".5"] + expected: FAIL + + [object.name: setAttribute() to true] + expected: FAIL + + [object.name: setAttribute() to false] + expected: FAIL + + [object.name: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.name: setAttribute() to NaN] + expected: FAIL + + [object.name: setAttribute() to Infinity] + expected: FAIL + + [object.name: setAttribute() to -Infinity] + expected: FAIL + + [object.name: setAttribute() to "\\0"] + expected: FAIL + + [object.name: setAttribute() to null] + expected: FAIL + + [object.name: setAttribute() to object "test-toString"] + expected: FAIL + + [object.name: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.name: IDL set to ""] + expected: FAIL + + [object.name: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.name: IDL set to undefined] + expected: FAIL + + [object.name: IDL set to 7] + expected: FAIL + + [object.name: IDL set to 1.5] + expected: FAIL + + [object.name: IDL set to "5%"] + expected: FAIL + + [object.name: IDL set to "+100"] + expected: FAIL + + [object.name: IDL set to ".5"] + expected: FAIL + + [object.name: IDL set to true] + expected: FAIL + + [object.name: IDL set to false] + expected: FAIL + + [object.name: IDL set to object "[object Object\]"] + expected: FAIL + + [object.name: IDL set to NaN] + expected: FAIL + + [object.name: IDL set to Infinity] + expected: FAIL + + [object.name: IDL set to -Infinity] + expected: FAIL + + [object.name: IDL set to "\\0"] + expected: FAIL + + [object.name: IDL set to null] + expected: FAIL + + [object.name: IDL set to object "test-toString"] + expected: FAIL + + [object.name: IDL set to object "test-valueOf"] + expected: FAIL + + [object.useMap: typeof IDL attribute] + expected: FAIL + + [object.useMap: IDL get with DOM attribute unset] + expected: FAIL + + [object.useMap: setAttribute() to ""] + expected: FAIL + + [object.useMap: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.useMap: setAttribute() to undefined] + expected: FAIL + + [object.useMap: setAttribute() to 7] + expected: FAIL + + [object.useMap: setAttribute() to 1.5] + expected: FAIL + + [object.useMap: setAttribute() to "5%"] + expected: FAIL + + [object.useMap: setAttribute() to "+100"] + expected: FAIL + + [object.useMap: setAttribute() to ".5"] + expected: FAIL + + [object.useMap: setAttribute() to true] + expected: FAIL + + [object.useMap: setAttribute() to false] + expected: FAIL + + [object.useMap: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.useMap: setAttribute() to NaN] + expected: FAIL + + [object.useMap: setAttribute() to Infinity] + expected: FAIL + + [object.useMap: setAttribute() to -Infinity] + expected: FAIL + + [object.useMap: setAttribute() to "\\0"] + expected: FAIL + + [object.useMap: setAttribute() to null] + expected: FAIL + + [object.useMap: setAttribute() to object "test-toString"] + expected: FAIL + + [object.useMap: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.useMap: IDL set to ""] + expected: FAIL + + [object.useMap: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.useMap: IDL set to undefined] + expected: FAIL + + [object.useMap: IDL set to 7] + expected: FAIL + + [object.useMap: IDL set to 1.5] + expected: FAIL + + [object.useMap: IDL set to "5%"] + expected: FAIL + + [object.useMap: IDL set to "+100"] + expected: FAIL + + [object.useMap: IDL set to ".5"] + expected: FAIL + + [object.useMap: IDL set to true] + expected: FAIL + + [object.useMap: IDL set to false] + expected: FAIL + + [object.useMap: IDL set to object "[object Object\]"] + expected: FAIL + + [object.useMap: IDL set to NaN] + expected: FAIL + + [object.useMap: IDL set to Infinity] + expected: FAIL + + [object.useMap: IDL set to -Infinity] + expected: FAIL + + [object.useMap: IDL set to "\\0"] + expected: FAIL + + [object.useMap: IDL set to null] + expected: FAIL + + [object.useMap: IDL set to object "test-toString"] + expected: FAIL + + [object.useMap: IDL set to object "test-valueOf"] + expected: FAIL + + [object.width: typeof IDL attribute] + expected: FAIL + + [object.width: IDL get with DOM attribute unset] + expected: FAIL + + [object.width: setAttribute() to ""] + expected: FAIL + + [object.width: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.width: setAttribute() to undefined] + expected: FAIL + + [object.width: setAttribute() to 7] + expected: FAIL + + [object.width: setAttribute() to 1.5] + expected: FAIL + + [object.width: setAttribute() to "5%"] + expected: FAIL + + [object.width: setAttribute() to "+100"] + expected: FAIL + + [object.width: setAttribute() to ".5"] + expected: FAIL + + [object.width: setAttribute() to true] + expected: FAIL + + [object.width: setAttribute() to false] + expected: FAIL + + [object.width: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.width: setAttribute() to NaN] + expected: FAIL + + [object.width: setAttribute() to Infinity] + expected: FAIL + + [object.width: setAttribute() to -Infinity] + expected: FAIL + + [object.width: setAttribute() to "\\0"] + expected: FAIL + + [object.width: setAttribute() to null] + expected: FAIL + + [object.width: setAttribute() to object "test-toString"] + expected: FAIL + + [object.width: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.width: IDL set to ""] + expected: FAIL + + [object.width: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.width: IDL set to undefined] + expected: FAIL + + [object.width: IDL set to 7] + expected: FAIL + + [object.width: IDL set to 1.5] + expected: FAIL + + [object.width: IDL set to "5%"] + expected: FAIL + + [object.width: IDL set to "+100"] + expected: FAIL + + [object.width: IDL set to ".5"] + expected: FAIL + + [object.width: IDL set to true] + expected: FAIL + + [object.width: IDL set to false] + expected: FAIL + + [object.width: IDL set to object "[object Object\]"] + expected: FAIL + + [object.width: IDL set to NaN] + expected: FAIL + + [object.width: IDL set to Infinity] + expected: FAIL + + [object.width: IDL set to -Infinity] + expected: FAIL + + [object.width: IDL set to "\\0"] + expected: FAIL + + [object.width: IDL set to null] + expected: FAIL + + [object.width: IDL set to object "test-toString"] + expected: FAIL + + [object.width: IDL set to object "test-valueOf"] + expected: FAIL + + [object.height: typeof IDL attribute] + expected: FAIL + + [object.height: IDL get with DOM attribute unset] + expected: FAIL + + [object.height: setAttribute() to ""] + expected: FAIL + + [object.height: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.height: setAttribute() to undefined] + expected: FAIL + + [object.height: setAttribute() to 7] + expected: FAIL + + [object.height: setAttribute() to 1.5] + expected: FAIL + + [object.height: setAttribute() to "5%"] + expected: FAIL + + [object.height: setAttribute() to "+100"] + expected: FAIL + + [object.height: setAttribute() to ".5"] + expected: FAIL + + [object.height: setAttribute() to true] + expected: FAIL + + [object.height: setAttribute() to false] + expected: FAIL + + [object.height: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.height: setAttribute() to NaN] + expected: FAIL + + [object.height: setAttribute() to Infinity] + expected: FAIL + + [object.height: setAttribute() to -Infinity] + expected: FAIL + + [object.height: setAttribute() to "\\0"] + expected: FAIL + + [object.height: setAttribute() to null] + expected: FAIL + + [object.height: setAttribute() to object "test-toString"] + expected: FAIL + + [object.height: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.height: IDL set to ""] + expected: FAIL + + [object.height: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.height: IDL set to undefined] + expected: FAIL + + [object.height: IDL set to 7] + expected: FAIL + + [object.height: IDL set to 1.5] + expected: FAIL + + [object.height: IDL set to "5%"] + expected: FAIL + + [object.height: IDL set to "+100"] + expected: FAIL + + [object.height: IDL set to ".5"] + expected: FAIL + + [object.height: IDL set to true] + expected: FAIL + + [object.height: IDL set to false] + expected: FAIL + + [object.height: IDL set to object "[object Object\]"] + expected: FAIL + + [object.height: IDL set to NaN] + expected: FAIL + + [object.height: IDL set to Infinity] + expected: FAIL + + [object.height: IDL set to -Infinity] + expected: FAIL + + [object.height: IDL set to "\\0"] + expected: FAIL + + [object.height: IDL set to null] + expected: FAIL + + [object.height: IDL set to object "test-toString"] + expected: FAIL + + [object.height: IDL set to object "test-valueOf"] + expected: FAIL + + [object.align: typeof IDL attribute] + expected: FAIL + + [object.align: IDL get with DOM attribute unset] + expected: FAIL + + [object.align: setAttribute() to ""] + expected: FAIL + + [object.align: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.align: setAttribute() to undefined] + expected: FAIL + + [object.align: setAttribute() to 7] + expected: FAIL + + [object.align: setAttribute() to 1.5] + expected: FAIL + + [object.align: setAttribute() to "5%"] + expected: FAIL + + [object.align: setAttribute() to "+100"] + expected: FAIL + + [object.align: setAttribute() to ".5"] + expected: FAIL + + [object.align: setAttribute() to true] + expected: FAIL + + [object.align: setAttribute() to false] + expected: FAIL + + [object.align: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.align: setAttribute() to NaN] + expected: FAIL + + [object.align: setAttribute() to Infinity] + expected: FAIL + + [object.align: setAttribute() to -Infinity] + expected: FAIL + + [object.align: setAttribute() to "\\0"] + expected: FAIL + + [object.align: setAttribute() to null] + expected: FAIL + + [object.align: setAttribute() to object "test-toString"] + expected: FAIL + + [object.align: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.align: IDL set to ""] + expected: FAIL + + [object.align: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.align: IDL set to undefined] + expected: FAIL + + [object.align: IDL set to 7] + expected: FAIL + + [object.align: IDL set to 1.5] + expected: FAIL + + [object.align: IDL set to "5%"] + expected: FAIL + + [object.align: IDL set to "+100"] + expected: FAIL + + [object.align: IDL set to ".5"] + expected: FAIL + + [object.align: IDL set to true] + expected: FAIL + + [object.align: IDL set to false] + expected: FAIL + + [object.align: IDL set to object "[object Object\]"] + expected: FAIL + + [object.align: IDL set to NaN] + expected: FAIL + + [object.align: IDL set to Infinity] + expected: FAIL + + [object.align: IDL set to -Infinity] + expected: FAIL + + [object.align: IDL set to "\\0"] + expected: FAIL + + [object.align: IDL set to null] + expected: FAIL + + [object.align: IDL set to object "test-toString"] + expected: FAIL + + [object.align: IDL set to object "test-valueOf"] + expected: FAIL + + [object.archive: typeof IDL attribute] + expected: FAIL + + [object.archive: IDL get with DOM attribute unset] + expected: FAIL + + [object.archive: setAttribute() to ""] + expected: FAIL + + [object.archive: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.archive: setAttribute() to undefined] + expected: FAIL + + [object.archive: setAttribute() to 7] + expected: FAIL + + [object.archive: setAttribute() to 1.5] + expected: FAIL + + [object.archive: setAttribute() to "5%"] + expected: FAIL + + [object.archive: setAttribute() to "+100"] + expected: FAIL + + [object.archive: setAttribute() to ".5"] + expected: FAIL + + [object.archive: setAttribute() to true] + expected: FAIL + + [object.archive: setAttribute() to false] + expected: FAIL + + [object.archive: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.archive: setAttribute() to NaN] + expected: FAIL + + [object.archive: setAttribute() to Infinity] + expected: FAIL + + [object.archive: setAttribute() to -Infinity] + expected: FAIL + + [object.archive: setAttribute() to "\\0"] + expected: FAIL + + [object.archive: setAttribute() to null] + expected: FAIL + + [object.archive: setAttribute() to object "test-toString"] + expected: FAIL + + [object.archive: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.archive: IDL set to ""] + expected: FAIL + + [object.archive: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.archive: IDL set to undefined] + expected: FAIL + + [object.archive: IDL set to 7] + expected: FAIL + + [object.archive: IDL set to 1.5] + expected: FAIL + + [object.archive: IDL set to "5%"] + expected: FAIL + + [object.archive: IDL set to "+100"] + expected: FAIL + + [object.archive: IDL set to ".5"] + expected: FAIL + + [object.archive: IDL set to true] + expected: FAIL + + [object.archive: IDL set to false] + expected: FAIL + + [object.archive: IDL set to object "[object Object\]"] + expected: FAIL + + [object.archive: IDL set to NaN] + expected: FAIL + + [object.archive: IDL set to Infinity] + expected: FAIL + + [object.archive: IDL set to -Infinity] + expected: FAIL + + [object.archive: IDL set to "\\0"] + expected: FAIL + + [object.archive: IDL set to null] + expected: FAIL + + [object.archive: IDL set to object "test-toString"] + expected: FAIL + + [object.archive: IDL set to object "test-valueOf"] + expected: FAIL + + [object.code: typeof IDL attribute] + expected: FAIL + + [object.code: IDL get with DOM attribute unset] + expected: FAIL + + [object.code: setAttribute() to ""] + expected: FAIL + + [object.code: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.code: setAttribute() to undefined] + expected: FAIL + + [object.code: setAttribute() to 7] + expected: FAIL + + [object.code: setAttribute() to 1.5] + expected: FAIL + + [object.code: setAttribute() to "5%"] + expected: FAIL + + [object.code: setAttribute() to "+100"] + expected: FAIL + + [object.code: setAttribute() to ".5"] + expected: FAIL + + [object.code: setAttribute() to true] + expected: FAIL + + [object.code: setAttribute() to false] + expected: FAIL + + [object.code: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.code: setAttribute() to NaN] + expected: FAIL + + [object.code: setAttribute() to Infinity] + expected: FAIL + + [object.code: setAttribute() to -Infinity] + expected: FAIL + + [object.code: setAttribute() to "\\0"] + expected: FAIL + + [object.code: setAttribute() to null] + expected: FAIL + + [object.code: setAttribute() to object "test-toString"] + expected: FAIL + + [object.code: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.code: IDL set to ""] + expected: FAIL + + [object.code: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.code: IDL set to undefined] + expected: FAIL + + [object.code: IDL set to 7] + expected: FAIL + + [object.code: IDL set to 1.5] + expected: FAIL + + [object.code: IDL set to "5%"] + expected: FAIL + + [object.code: IDL set to "+100"] + expected: FAIL + + [object.code: IDL set to ".5"] + expected: FAIL + + [object.code: IDL set to true] + expected: FAIL + + [object.code: IDL set to false] + expected: FAIL + + [object.code: IDL set to object "[object Object\]"] + expected: FAIL + + [object.code: IDL set to NaN] + expected: FAIL + + [object.code: IDL set to Infinity] + expected: FAIL + + [object.code: IDL set to -Infinity] + expected: FAIL + + [object.code: IDL set to "\\0"] + expected: FAIL + + [object.code: IDL set to null] + expected: FAIL + + [object.code: IDL set to object "test-toString"] + expected: FAIL + + [object.code: IDL set to object "test-valueOf"] + expected: FAIL + + [object.declare: typeof IDL attribute] + expected: FAIL + + [object.declare: IDL get with DOM attribute unset] + expected: FAIL + + [object.declare: setAttribute() to ""] + expected: FAIL + + [object.declare: setAttribute() to " foo "] + expected: FAIL + + [object.declare: setAttribute() to undefined] + expected: FAIL + + [object.declare: setAttribute() to null] + expected: FAIL + + [object.declare: setAttribute() to 7] + expected: FAIL + + [object.declare: setAttribute() to 1.5] + expected: FAIL + + [object.declare: setAttribute() to "5%"] + expected: FAIL + + [object.declare: setAttribute() to "+100"] + expected: FAIL + + [object.declare: setAttribute() to ".5"] + expected: FAIL + + [object.declare: setAttribute() to true] + expected: FAIL + + [object.declare: setAttribute() to false] + expected: FAIL + + [object.declare: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.declare: setAttribute() to NaN] + expected: FAIL + + [object.declare: setAttribute() to Infinity] + expected: FAIL + + [object.declare: setAttribute() to -Infinity] + expected: FAIL + + [object.declare: setAttribute() to "\\0"] + expected: FAIL + + [object.declare: setAttribute() to object "test-toString"] + expected: FAIL + + [object.declare: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.declare: setAttribute() to "declare"] + expected: FAIL + + [object.declare: IDL set to ""] + expected: FAIL + + [object.declare: IDL set to " foo "] + expected: FAIL + + [object.declare: IDL set to undefined] + expected: FAIL + + [object.declare: IDL set to null] + expected: FAIL + + [object.declare: IDL set to 7] + expected: FAIL + + [object.declare: IDL set to 1.5] + expected: FAIL + + [object.declare: IDL set to "5%"] + expected: FAIL + + [object.declare: IDL set to "+100"] + expected: FAIL + + [object.declare: IDL set to ".5"] + expected: FAIL + + [object.declare: IDL set to false] + expected: FAIL + + [object.declare: IDL set to object "[object Object\]"] + expected: FAIL + + [object.declare: IDL set to NaN] + expected: FAIL + + [object.declare: IDL set to Infinity] + expected: FAIL + + [object.declare: IDL set to -Infinity] + expected: FAIL + + [object.declare: IDL set to "\\0"] + expected: FAIL + + [object.declare: IDL set to object "test-toString"] + expected: FAIL + + [object.declare: IDL set to object "test-valueOf"] + expected: FAIL + + [object.hspace: typeof IDL attribute] + expected: FAIL + + [object.hspace: IDL get with DOM attribute unset] + expected: FAIL + + [object.hspace: setAttribute() to -2147483649] + expected: FAIL + + [object.hspace: setAttribute() to -2147483648] + expected: FAIL + + [object.hspace: setAttribute() to -36] + expected: FAIL + + [object.hspace: setAttribute() to -1] + expected: FAIL + + [object.hspace: setAttribute() to 0] + expected: FAIL + + [object.hspace: setAttribute() to 1] + expected: FAIL + + [object.hspace: setAttribute() to 257] + expected: FAIL + + [object.hspace: setAttribute() to 2147483647] + expected: FAIL + + [object.hspace: setAttribute() to 2147483648] + expected: FAIL + + [object.hspace: setAttribute() to 4294967295] + expected: FAIL + + [object.hspace: setAttribute() to 4294967296] + expected: FAIL + + [object.hspace: setAttribute() to ""] + expected: FAIL + + [object.hspace: setAttribute() to "-"] + expected: FAIL + + [object.hspace: setAttribute() to "+"] + expected: FAIL + + [object.hspace: setAttribute() to "-1"] + expected: FAIL + + [object.hspace: setAttribute() to "-0"] + expected: FAIL + + [object.hspace: setAttribute() to "0"] + expected: FAIL + + [object.hspace: setAttribute() to "1"] + expected: FAIL + + [object.hspace: setAttribute() to "\\t7"] + expected: FAIL + + [object.hspace: setAttribute() to "\\v7"] + expected: FAIL + + [object.hspace: setAttribute() to "\\f7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to "7"] + expected: FAIL + + [object.hspace: setAttribute() to "\\n7"] + expected: FAIL + + [object.hspace: setAttribute() to "\\r7"] + expected: FAIL + + [object.hspace: setAttribute() to "
7"] + expected: FAIL + + [object.hspace: setAttribute() to "
7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to "7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to " 7"] + expected: FAIL + + [object.hspace: setAttribute() to "\\t\\v7"] + expected: FAIL + + [object.hspace: setAttribute() to "\\n\\v7"] + expected: FAIL + + [object.hspace: setAttribute() to "\\f\\v7"] + expected: FAIL + + [object.hspace: setAttribute() to "\\r\\v7"] + expected: FAIL + + [object.hspace: setAttribute() to " \\v7"] + expected: FAIL + + [object.hspace: setAttribute() to "7\\v"] + expected: FAIL + + [object.hspace: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.hspace: setAttribute() to undefined] + expected: FAIL + + [object.hspace: setAttribute() to 1.5] + expected: FAIL + + [object.hspace: setAttribute() to "5%"] + expected: FAIL + + [object.hspace: setAttribute() to "+100"] + expected: FAIL + + [object.hspace: setAttribute() to ".5"] + expected: FAIL + + [object.hspace: setAttribute() to true] + expected: FAIL + + [object.hspace: setAttribute() to false] + expected: FAIL + + [object.hspace: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.hspace: setAttribute() to NaN] + expected: FAIL + + [object.hspace: setAttribute() to Infinity] + expected: FAIL + + [object.hspace: setAttribute() to -Infinity] + expected: FAIL + + [object.hspace: setAttribute() to "\\0"] + expected: FAIL + + [object.hspace: setAttribute() to object "2"] + expected: FAIL + + [object.hspace: setAttribute() to object "3"] + expected: FAIL + + [object.hspace: IDL set to 0] + expected: FAIL + + [object.hspace: IDL set to 1] + expected: FAIL + + [object.hspace: IDL set to 257] + expected: FAIL + + [object.hspace: IDL set to 2147483647] + expected: FAIL + + [object.hspace: IDL set to "-0"] + expected: FAIL + + [object.hspace: IDL set to 2147483648] + expected: FAIL + + [object.hspace: IDL set to 4294967295] + expected: FAIL + + [object.standby: typeof IDL attribute] + expected: FAIL + + [object.standby: IDL get with DOM attribute unset] + expected: FAIL + + [object.standby: setAttribute() to ""] + expected: FAIL + + [object.standby: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.standby: setAttribute() to undefined] + expected: FAIL + + [object.standby: setAttribute() to 7] + expected: FAIL + + [object.standby: setAttribute() to 1.5] + expected: FAIL + + [object.standby: setAttribute() to "5%"] + expected: FAIL + + [object.standby: setAttribute() to "+100"] + expected: FAIL + + [object.standby: setAttribute() to ".5"] + expected: FAIL + + [object.standby: setAttribute() to true] + expected: FAIL + + [object.standby: setAttribute() to false] + expected: FAIL + + [object.standby: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.standby: setAttribute() to NaN] + expected: FAIL + + [object.standby: setAttribute() to Infinity] + expected: FAIL + + [object.standby: setAttribute() to -Infinity] + expected: FAIL + + [object.standby: setAttribute() to "\\0"] + expected: FAIL + + [object.standby: setAttribute() to null] + expected: FAIL + + [object.standby: setAttribute() to object "test-toString"] + expected: FAIL + + [object.standby: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.standby: IDL set to ""] + expected: FAIL + + [object.standby: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.standby: IDL set to undefined] + expected: FAIL + + [object.standby: IDL set to 7] + expected: FAIL + + [object.standby: IDL set to 1.5] + expected: FAIL + + [object.standby: IDL set to "5%"] + expected: FAIL + + [object.standby: IDL set to "+100"] + expected: FAIL + + [object.standby: IDL set to ".5"] + expected: FAIL + + [object.standby: IDL set to true] + expected: FAIL + + [object.standby: IDL set to false] + expected: FAIL + + [object.standby: IDL set to object "[object Object\]"] + expected: FAIL + + [object.standby: IDL set to NaN] + expected: FAIL + + [object.standby: IDL set to Infinity] + expected: FAIL + + [object.standby: IDL set to -Infinity] + expected: FAIL + + [object.standby: IDL set to "\\0"] + expected: FAIL + + [object.standby: IDL set to null] + expected: FAIL + + [object.standby: IDL set to object "test-toString"] + expected: FAIL + + [object.standby: IDL set to object "test-valueOf"] + expected: FAIL + + [object.vspace: typeof IDL attribute] + expected: FAIL + + [object.vspace: IDL get with DOM attribute unset] + expected: FAIL + + [object.vspace: setAttribute() to -2147483649] + expected: FAIL + + [object.vspace: setAttribute() to -2147483648] + expected: FAIL + + [object.vspace: setAttribute() to -36] + expected: FAIL + + [object.vspace: setAttribute() to -1] + expected: FAIL + + [object.vspace: setAttribute() to 0] + expected: FAIL + + [object.vspace: setAttribute() to 1] + expected: FAIL + + [object.vspace: setAttribute() to 257] + expected: FAIL + + [object.vspace: setAttribute() to 2147483647] + expected: FAIL + + [object.vspace: setAttribute() to 2147483648] + expected: FAIL + + [object.vspace: setAttribute() to 4294967295] + expected: FAIL + + [object.vspace: setAttribute() to 4294967296] + expected: FAIL + + [object.vspace: setAttribute() to ""] + expected: FAIL + + [object.vspace: setAttribute() to "-"] + expected: FAIL + + [object.vspace: setAttribute() to "+"] + expected: FAIL + + [object.vspace: setAttribute() to "-1"] + expected: FAIL + + [object.vspace: setAttribute() to "-0"] + expected: FAIL + + [object.vspace: setAttribute() to "0"] + expected: FAIL + + [object.vspace: setAttribute() to "1"] + expected: FAIL + + [object.vspace: setAttribute() to "\\t7"] + expected: FAIL + + [object.vspace: setAttribute() to "\\v7"] + expected: FAIL + + [object.vspace: setAttribute() to "\\f7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to "7"] + expected: FAIL + + [object.vspace: setAttribute() to "\\n7"] + expected: FAIL + + [object.vspace: setAttribute() to "\\r7"] + expected: FAIL + + [object.vspace: setAttribute() to "
7"] + expected: FAIL + + [object.vspace: setAttribute() to "
7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to "7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to " 7"] + expected: FAIL + + [object.vspace: setAttribute() to "\\t\\v7"] + expected: FAIL + + [object.vspace: setAttribute() to "\\n\\v7"] + expected: FAIL + + [object.vspace: setAttribute() to "\\f\\v7"] + expected: FAIL + + [object.vspace: setAttribute() to "\\r\\v7"] + expected: FAIL + + [object.vspace: setAttribute() to " \\v7"] + expected: FAIL + + [object.vspace: setAttribute() to "7\\v"] + expected: FAIL + + [object.vspace: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.vspace: setAttribute() to undefined] + expected: FAIL + + [object.vspace: setAttribute() to 1.5] + expected: FAIL + + [object.vspace: setAttribute() to "5%"] + expected: FAIL + + [object.vspace: setAttribute() to "+100"] + expected: FAIL + + [object.vspace: setAttribute() to ".5"] + expected: FAIL + + [object.vspace: setAttribute() to true] + expected: FAIL + + [object.vspace: setAttribute() to false] + expected: FAIL + + [object.vspace: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.vspace: setAttribute() to NaN] + expected: FAIL + + [object.vspace: setAttribute() to Infinity] + expected: FAIL + + [object.vspace: setAttribute() to -Infinity] + expected: FAIL + + [object.vspace: setAttribute() to "\\0"] + expected: FAIL + + [object.vspace: setAttribute() to object "2"] + expected: FAIL + + [object.vspace: setAttribute() to object "3"] + expected: FAIL + + [object.vspace: IDL set to 0] + expected: FAIL + + [object.vspace: IDL set to 1] + expected: FAIL + + [object.vspace: IDL set to 257] + expected: FAIL + + [object.vspace: IDL set to 2147483647] + expected: FAIL + + [object.vspace: IDL set to "-0"] + expected: FAIL + + [object.vspace: IDL set to 2147483648] + expected: FAIL + + [object.vspace: IDL set to 4294967295] + expected: FAIL + + [object.codeBase: typeof IDL attribute] + expected: FAIL + + [object.codeBase: IDL get with DOM attribute unset] + expected: FAIL + + [object.codeBase: setAttribute() to ""] + expected: FAIL + + [object.codeBase: setAttribute() to " foo "] + expected: FAIL + + [object.codeBase: setAttribute() to "http://site.example/"] + expected: FAIL + + [object.codeBase: setAttribute() to "//site.example/path???@#l"] + expected: FAIL + + [object.codeBase: setAttribute() to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [object.codeBase: setAttribute() to undefined] + expected: FAIL + + [object.codeBase: setAttribute() to 7] + expected: FAIL + + [object.codeBase: setAttribute() to 1.5] + expected: FAIL + + [object.codeBase: setAttribute() to "5%"] + expected: FAIL + + [object.codeBase: setAttribute() to "+100"] + expected: FAIL + + [object.codeBase: setAttribute() to ".5"] + expected: FAIL + + [object.codeBase: setAttribute() to true] + expected: FAIL + + [object.codeBase: setAttribute() to false] + expected: FAIL + + [object.codeBase: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.codeBase: setAttribute() to NaN] + expected: FAIL + + [object.codeBase: setAttribute() to Infinity] + expected: FAIL + + [object.codeBase: setAttribute() to -Infinity] + expected: FAIL + + [object.codeBase: setAttribute() to "\\0"] + expected: FAIL + + [object.codeBase: setAttribute() to null] + expected: FAIL + + [object.codeBase: setAttribute() to object "test-toString"] + expected: FAIL + + [object.codeBase: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.codeBase: IDL set to ""] + expected: FAIL + + [object.codeBase: IDL set to " foo "] + expected: FAIL + + [object.codeBase: IDL set to "http://site.example/"] + expected: FAIL + + [object.codeBase: IDL set to "//site.example/path???@#l"] + expected: FAIL + + [object.codeBase: IDL set to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [object.codeBase: IDL set to undefined] + expected: FAIL + + [object.codeBase: IDL set to 7] + expected: FAIL + + [object.codeBase: IDL set to 1.5] + expected: FAIL + + [object.codeBase: IDL set to "5%"] + expected: FAIL + + [object.codeBase: IDL set to "+100"] + expected: FAIL + + [object.codeBase: IDL set to ".5"] + expected: FAIL + + [object.codeBase: IDL set to true] + expected: FAIL + + [object.codeBase: IDL set to false] + expected: FAIL + + [object.codeBase: IDL set to object "[object Object\]"] + expected: FAIL + + [object.codeBase: IDL set to NaN] + expected: FAIL + + [object.codeBase: IDL set to Infinity] + expected: FAIL + + [object.codeBase: IDL set to -Infinity] + expected: FAIL + + [object.codeBase: IDL set to "\\0"] + expected: FAIL + + [object.codeBase: IDL set to null] + expected: FAIL + + [object.codeBase: IDL set to object "test-toString"] + expected: FAIL + + [object.codeBase: IDL set to object "test-valueOf"] + expected: FAIL + + [object.codeType: typeof IDL attribute] + expected: FAIL + + [object.codeType: IDL get with DOM attribute unset] + expected: FAIL + + [object.codeType: setAttribute() to ""] + expected: FAIL + + [object.codeType: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.codeType: setAttribute() to undefined] + expected: FAIL + + [object.codeType: setAttribute() to 7] + expected: FAIL + + [object.codeType: setAttribute() to 1.5] + expected: FAIL + + [object.codeType: setAttribute() to "5%"] + expected: FAIL + + [object.codeType: setAttribute() to "+100"] + expected: FAIL + + [object.codeType: setAttribute() to ".5"] + expected: FAIL + + [object.codeType: setAttribute() to true] + expected: FAIL + + [object.codeType: setAttribute() to false] + expected: FAIL + + [object.codeType: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.codeType: setAttribute() to NaN] + expected: FAIL + + [object.codeType: setAttribute() to Infinity] + expected: FAIL + + [object.codeType: setAttribute() to -Infinity] + expected: FAIL + + [object.codeType: setAttribute() to "\\0"] + expected: FAIL + + [object.codeType: setAttribute() to null] + expected: FAIL + + [object.codeType: setAttribute() to object "test-toString"] + expected: FAIL + + [object.codeType: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.codeType: IDL set to ""] + expected: FAIL + + [object.codeType: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.codeType: IDL set to undefined] + expected: FAIL + + [object.codeType: IDL set to 7] + expected: FAIL + + [object.codeType: IDL set to 1.5] + expected: FAIL + + [object.codeType: IDL set to "5%"] + expected: FAIL + + [object.codeType: IDL set to "+100"] + expected: FAIL + + [object.codeType: IDL set to ".5"] + expected: FAIL + + [object.codeType: IDL set to true] + expected: FAIL + + [object.codeType: IDL set to false] + expected: FAIL + + [object.codeType: IDL set to object "[object Object\]"] + expected: FAIL + + [object.codeType: IDL set to NaN] + expected: FAIL + + [object.codeType: IDL set to Infinity] + expected: FAIL + + [object.codeType: IDL set to -Infinity] + expected: FAIL + + [object.codeType: IDL set to "\\0"] + expected: FAIL + + [object.codeType: IDL set to null] + expected: FAIL + + [object.codeType: IDL set to object "test-toString"] + expected: FAIL + + [object.codeType: IDL set to object "test-valueOf"] + expected: FAIL + + [object.border: typeof IDL attribute] + expected: FAIL + + [object.border: IDL get with DOM attribute unset] + expected: FAIL + + [object.border: setAttribute() to ""] + expected: FAIL + + [object.border: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.border: setAttribute() to undefined] + expected: FAIL + + [object.border: setAttribute() to 7] + expected: FAIL + + [object.border: setAttribute() to 1.5] + expected: FAIL + + [object.border: setAttribute() to "5%"] + expected: FAIL + + [object.border: setAttribute() to "+100"] + expected: FAIL + + [object.border: setAttribute() to ".5"] + expected: FAIL + + [object.border: setAttribute() to true] + expected: FAIL + + [object.border: setAttribute() to false] + expected: FAIL + + [object.border: setAttribute() to object "[object Object\]"] + expected: FAIL + + [object.border: setAttribute() to NaN] + expected: FAIL + + [object.border: setAttribute() to Infinity] + expected: FAIL + + [object.border: setAttribute() to -Infinity] + expected: FAIL + + [object.border: setAttribute() to "\\0"] + expected: FAIL + + [object.border: setAttribute() to null] + expected: FAIL + + [object.border: setAttribute() to object "test-toString"] + expected: FAIL + + [object.border: setAttribute() to object "test-valueOf"] + expected: FAIL + + [object.border: IDL set to ""] + expected: FAIL + + [object.border: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [object.border: IDL set to undefined] + expected: FAIL + + [object.border: IDL set to 7] + expected: FAIL + + [object.border: IDL set to 1.5] + expected: FAIL + + [object.border: IDL set to "5%"] + expected: FAIL + + [object.border: IDL set to "+100"] + expected: FAIL + + [object.border: IDL set to ".5"] + expected: FAIL + + [object.border: IDL set to true] + expected: FAIL + + [object.border: IDL set to false] + expected: FAIL + + [object.border: IDL set to object "[object Object\]"] + expected: FAIL + + [object.border: IDL set to NaN] + expected: FAIL + + [object.border: IDL set to Infinity] + expected: FAIL + + [object.border: IDL set to -Infinity] + expected: FAIL + + [object.border: IDL set to "\\0"] + expected: FAIL + + [object.border: IDL set to null] + expected: FAIL + + [object.border: IDL set to object "test-toString"] + expected: FAIL + + [object.border: IDL set to object "test-valueOf"] + expected: FAIL + + [param.accessKey: typeof IDL attribute] + expected: FAIL + + [param.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [param.accessKey: setAttribute() to ""] + expected: FAIL + + [param.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [param.accessKey: setAttribute() to undefined] + expected: FAIL + + [param.accessKey: setAttribute() to 7] + expected: FAIL + + [param.accessKey: setAttribute() to 1.5] + expected: FAIL + + [param.accessKey: setAttribute() to "5%"] + expected: FAIL + + [param.accessKey: setAttribute() to "+100"] + expected: FAIL + + [param.accessKey: setAttribute() to ".5"] + expected: FAIL + + [param.accessKey: setAttribute() to true] + expected: FAIL + + [param.accessKey: setAttribute() to false] + expected: FAIL + + [param.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [param.accessKey: setAttribute() to NaN] + expected: FAIL + + [param.accessKey: setAttribute() to Infinity] + expected: FAIL + + [param.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [param.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [param.accessKey: setAttribute() to null] + expected: FAIL + + [param.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [param.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [param.accessKey: IDL set to ""] + expected: FAIL + + [param.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [param.accessKey: IDL set to undefined] + expected: FAIL + + [param.accessKey: IDL set to 7] + expected: FAIL + + [param.accessKey: IDL set to 1.5] + expected: FAIL + + [param.accessKey: IDL set to "5%"] + expected: FAIL + + [param.accessKey: IDL set to "+100"] + expected: FAIL + + [param.accessKey: IDL set to ".5"] + expected: FAIL + + [param.accessKey: IDL set to true] + expected: FAIL + + [param.accessKey: IDL set to false] + expected: FAIL + + [param.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [param.accessKey: IDL set to NaN] + expected: FAIL + + [param.accessKey: IDL set to Infinity] + expected: FAIL + + [param.accessKey: IDL set to -Infinity] + expected: FAIL + + [param.accessKey: IDL set to "\\0"] + expected: FAIL + + [param.accessKey: IDL set to null] + expected: FAIL + + [param.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [param.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [param.tabIndex: typeof IDL attribute] + expected: FAIL + + [param.tabIndex: setAttribute() to -36] + expected: FAIL + + [param.tabIndex: setAttribute() to -1] + expected: FAIL + + [param.tabIndex: setAttribute() to 0] + expected: FAIL + + [param.tabIndex: setAttribute() to 1] + expected: FAIL + + [param.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [param.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [param.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [param.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [param.tabIndex: setAttribute() to "0"] + expected: FAIL + + [param.tabIndex: setAttribute() to "1"] + expected: FAIL + + [param.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [param.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [param.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [param.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [param.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [param.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [param.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [param.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [param.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [param.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [param.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [param.tabIndex: IDL set to -36] + expected: FAIL + + [param.tabIndex: IDL set to -1] + expected: FAIL + + [param.tabIndex: IDL set to 0] + expected: FAIL + + [param.tabIndex: IDL set to 1] + expected: FAIL + + [param.tabIndex: IDL set to 2147483647] + expected: FAIL + + [param.tabIndex: IDL set to -2147483648] + expected: FAIL + + [param.name: typeof IDL attribute] + expected: FAIL + + [param.name: IDL get with DOM attribute unset] + expected: FAIL + + [param.name: setAttribute() to ""] + expected: FAIL + + [param.name: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [param.name: setAttribute() to undefined] + expected: FAIL + + [param.name: setAttribute() to 7] + expected: FAIL + + [param.name: setAttribute() to 1.5] + expected: FAIL + + [param.name: setAttribute() to "5%"] + expected: FAIL + + [param.name: setAttribute() to "+100"] + expected: FAIL + + [param.name: setAttribute() to ".5"] + expected: FAIL + + [param.name: setAttribute() to true] + expected: FAIL + + [param.name: setAttribute() to false] + expected: FAIL + + [param.name: setAttribute() to object "[object Object\]"] + expected: FAIL + + [param.name: setAttribute() to NaN] + expected: FAIL + + [param.name: setAttribute() to Infinity] + expected: FAIL + + [param.name: setAttribute() to -Infinity] + expected: FAIL + + [param.name: setAttribute() to "\\0"] + expected: FAIL + + [param.name: setAttribute() to null] + expected: FAIL + + [param.name: setAttribute() to object "test-toString"] + expected: FAIL + + [param.name: setAttribute() to object "test-valueOf"] + expected: FAIL + + [param.name: IDL set to ""] + expected: FAIL + + [param.name: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [param.name: IDL set to undefined] + expected: FAIL + + [param.name: IDL set to 7] + expected: FAIL + + [param.name: IDL set to 1.5] + expected: FAIL + + [param.name: IDL set to "5%"] + expected: FAIL + + [param.name: IDL set to "+100"] + expected: FAIL + + [param.name: IDL set to ".5"] + expected: FAIL + + [param.name: IDL set to true] + expected: FAIL + + [param.name: IDL set to false] + expected: FAIL + + [param.name: IDL set to object "[object Object\]"] + expected: FAIL + + [param.name: IDL set to NaN] + expected: FAIL + + [param.name: IDL set to Infinity] + expected: FAIL + + [param.name: IDL set to -Infinity] + expected: FAIL + + [param.name: IDL set to "\\0"] + expected: FAIL + + [param.name: IDL set to null] + expected: FAIL + + [param.name: IDL set to object "test-toString"] + expected: FAIL + + [param.name: IDL set to object "test-valueOf"] + expected: FAIL + + [param.value: typeof IDL attribute] + expected: FAIL + + [param.value: IDL get with DOM attribute unset] + expected: FAIL + + [param.value: setAttribute() to ""] + expected: FAIL + + [param.value: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [param.value: setAttribute() to undefined] + expected: FAIL + + [param.value: setAttribute() to 7] + expected: FAIL + + [param.value: setAttribute() to 1.5] + expected: FAIL + + [param.value: setAttribute() to "5%"] + expected: FAIL + + [param.value: setAttribute() to "+100"] + expected: FAIL + + [param.value: setAttribute() to ".5"] + expected: FAIL + + [param.value: setAttribute() to true] + expected: FAIL + + [param.value: setAttribute() to false] + expected: FAIL + + [param.value: setAttribute() to object "[object Object\]"] + expected: FAIL + + [param.value: setAttribute() to NaN] + expected: FAIL + + [param.value: setAttribute() to Infinity] + expected: FAIL + + [param.value: setAttribute() to -Infinity] + expected: FAIL + + [param.value: setAttribute() to "\\0"] + expected: FAIL + + [param.value: setAttribute() to null] + expected: FAIL + + [param.value: setAttribute() to object "test-toString"] + expected: FAIL + + [param.value: setAttribute() to object "test-valueOf"] + expected: FAIL + + [param.value: IDL set to ""] + expected: FAIL + + [param.value: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [param.value: IDL set to undefined] + expected: FAIL + + [param.value: IDL set to 7] + expected: FAIL + + [param.value: IDL set to 1.5] + expected: FAIL + + [param.value: IDL set to "5%"] + expected: FAIL + + [param.value: IDL set to "+100"] + expected: FAIL + + [param.value: IDL set to ".5"] + expected: FAIL + + [param.value: IDL set to true] + expected: FAIL + + [param.value: IDL set to false] + expected: FAIL + + [param.value: IDL set to object "[object Object\]"] + expected: FAIL + + [param.value: IDL set to NaN] + expected: FAIL + + [param.value: IDL set to Infinity] + expected: FAIL + + [param.value: IDL set to -Infinity] + expected: FAIL + + [param.value: IDL set to "\\0"] + expected: FAIL + + [param.value: IDL set to null] + expected: FAIL + + [param.value: IDL set to object "test-toString"] + expected: FAIL + + [param.value: IDL set to object "test-valueOf"] + expected: FAIL + + [param.type: typeof IDL attribute] + expected: FAIL + + [param.type: IDL get with DOM attribute unset] + expected: FAIL + + [param.type: setAttribute() to ""] + expected: FAIL + + [param.type: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [param.type: setAttribute() to undefined] + expected: FAIL + + [param.type: setAttribute() to 7] + expected: FAIL + + [param.type: setAttribute() to 1.5] + expected: FAIL + + [param.type: setAttribute() to "5%"] + expected: FAIL + + [param.type: setAttribute() to "+100"] + expected: FAIL + + [param.type: setAttribute() to ".5"] + expected: FAIL + + [param.type: setAttribute() to true] + expected: FAIL + + [param.type: setAttribute() to false] + expected: FAIL + + [param.type: setAttribute() to object "[object Object\]"] + expected: FAIL + + [param.type: setAttribute() to NaN] + expected: FAIL + + [param.type: setAttribute() to Infinity] + expected: FAIL + + [param.type: setAttribute() to -Infinity] + expected: FAIL + + [param.type: setAttribute() to "\\0"] + expected: FAIL + + [param.type: setAttribute() to null] + expected: FAIL + + [param.type: setAttribute() to object "test-toString"] + expected: FAIL + + [param.type: setAttribute() to object "test-valueOf"] + expected: FAIL + + [param.type: IDL set to ""] + expected: FAIL + + [param.type: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [param.type: IDL set to undefined] + expected: FAIL + + [param.type: IDL set to 7] + expected: FAIL + + [param.type: IDL set to 1.5] + expected: FAIL + + [param.type: IDL set to "5%"] + expected: FAIL + + [param.type: IDL set to "+100"] + expected: FAIL + + [param.type: IDL set to ".5"] + expected: FAIL + + [param.type: IDL set to true] + expected: FAIL + + [param.type: IDL set to false] + expected: FAIL + + [param.type: IDL set to object "[object Object\]"] + expected: FAIL + + [param.type: IDL set to NaN] + expected: FAIL + + [param.type: IDL set to Infinity] + expected: FAIL + + [param.type: IDL set to -Infinity] + expected: FAIL + + [param.type: IDL set to "\\0"] + expected: FAIL + + [param.type: IDL set to null] + expected: FAIL + + [param.type: IDL set to object "test-toString"] + expected: FAIL + + [param.type: IDL set to object "test-valueOf"] + expected: FAIL + + [param.valueType: typeof IDL attribute] + expected: FAIL + + [param.valueType: IDL get with DOM attribute unset] + expected: FAIL + + [param.valueType: setAttribute() to ""] + expected: FAIL + + [param.valueType: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [param.valueType: setAttribute() to undefined] + expected: FAIL + + [param.valueType: setAttribute() to 7] + expected: FAIL + + [param.valueType: setAttribute() to 1.5] + expected: FAIL + + [param.valueType: setAttribute() to "5%"] + expected: FAIL + + [param.valueType: setAttribute() to "+100"] + expected: FAIL + + [param.valueType: setAttribute() to ".5"] + expected: FAIL + + [param.valueType: setAttribute() to true] + expected: FAIL + + [param.valueType: setAttribute() to false] + expected: FAIL + + [param.valueType: setAttribute() to object "[object Object\]"] + expected: FAIL + + [param.valueType: setAttribute() to NaN] + expected: FAIL + + [param.valueType: setAttribute() to Infinity] + expected: FAIL + + [param.valueType: setAttribute() to -Infinity] + expected: FAIL + + [param.valueType: setAttribute() to "\\0"] + expected: FAIL + + [param.valueType: setAttribute() to null] + expected: FAIL + + [param.valueType: setAttribute() to object "test-toString"] + expected: FAIL + + [param.valueType: setAttribute() to object "test-valueOf"] + expected: FAIL + + [param.valueType: IDL set to ""] + expected: FAIL + + [param.valueType: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [param.valueType: IDL set to undefined] + expected: FAIL + + [param.valueType: IDL set to 7] + expected: FAIL + + [param.valueType: IDL set to 1.5] + expected: FAIL + + [param.valueType: IDL set to "5%"] + expected: FAIL + + [param.valueType: IDL set to "+100"] + expected: FAIL + + [param.valueType: IDL set to ".5"] + expected: FAIL + + [param.valueType: IDL set to true] + expected: FAIL + + [param.valueType: IDL set to false] + expected: FAIL + + [param.valueType: IDL set to object "[object Object\]"] + expected: FAIL + + [param.valueType: IDL set to NaN] + expected: FAIL + + [param.valueType: IDL set to Infinity] + expected: FAIL + + [param.valueType: IDL set to -Infinity] + expected: FAIL + + [param.valueType: IDL set to "\\0"] + expected: FAIL + + [param.valueType: IDL set to null] + expected: FAIL + + [param.valueType: IDL set to object "test-toString"] + expected: FAIL + + [param.valueType: IDL set to object "test-valueOf"] + expected: FAIL + + [video.accessKey: typeof IDL attribute] + expected: FAIL + + [video.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [video.accessKey: setAttribute() to ""] + expected: FAIL + + [video.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [video.accessKey: setAttribute() to undefined] + expected: FAIL + + [video.accessKey: setAttribute() to 7] + expected: FAIL + + [video.accessKey: setAttribute() to 1.5] + expected: FAIL + + [video.accessKey: setAttribute() to "5%"] + expected: FAIL + + [video.accessKey: setAttribute() to "+100"] + expected: FAIL + + [video.accessKey: setAttribute() to ".5"] + expected: FAIL + + [video.accessKey: setAttribute() to true] + expected: FAIL + + [video.accessKey: setAttribute() to false] + expected: FAIL + + [video.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [video.accessKey: setAttribute() to NaN] + expected: FAIL + + [video.accessKey: setAttribute() to Infinity] + expected: FAIL + + [video.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [video.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [video.accessKey: setAttribute() to null] + expected: FAIL + + [video.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [video.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [video.accessKey: IDL set to ""] + expected: FAIL + + [video.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [video.accessKey: IDL set to undefined] + expected: FAIL + + [video.accessKey: IDL set to 7] + expected: FAIL + + [video.accessKey: IDL set to 1.5] + expected: FAIL + + [video.accessKey: IDL set to "5%"] + expected: FAIL + + [video.accessKey: IDL set to "+100"] + expected: FAIL + + [video.accessKey: IDL set to ".5"] + expected: FAIL + + [video.accessKey: IDL set to true] + expected: FAIL + + [video.accessKey: IDL set to false] + expected: FAIL + + [video.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [video.accessKey: IDL set to NaN] + expected: FAIL + + [video.accessKey: IDL set to Infinity] + expected: FAIL + + [video.accessKey: IDL set to -Infinity] + expected: FAIL + + [video.accessKey: IDL set to "\\0"] + expected: FAIL + + [video.accessKey: IDL set to null] + expected: FAIL + + [video.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [video.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [video.tabIndex: typeof IDL attribute] + expected: FAIL + + [video.tabIndex: setAttribute() to -36] + expected: FAIL + + [video.tabIndex: setAttribute() to -1] + expected: FAIL + + [video.tabIndex: setAttribute() to 0] + expected: FAIL + + [video.tabIndex: setAttribute() to 1] + expected: FAIL + + [video.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [video.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [video.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [video.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [video.tabIndex: setAttribute() to "0"] + expected: FAIL + + [video.tabIndex: setAttribute() to "1"] + expected: FAIL + + [video.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [video.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [video.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [video.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [video.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [video.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [video.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [video.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [video.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [video.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [video.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [video.tabIndex: IDL set to -36] + expected: FAIL + + [video.tabIndex: IDL set to -1] + expected: FAIL + + [video.tabIndex: IDL set to 0] + expected: FAIL + + [video.tabIndex: IDL set to 1] + expected: FAIL + + [video.tabIndex: IDL set to 2147483647] + expected: FAIL + + [video.tabIndex: IDL set to -2147483648] + expected: FAIL + + [video.width: typeof IDL attribute] + expected: FAIL + + [video.width: IDL get with DOM attribute unset] + expected: FAIL + + [video.width: setAttribute() to -2147483649] + expected: FAIL + + [video.width: setAttribute() to -2147483648] + expected: FAIL + + [video.width: setAttribute() to -36] + expected: FAIL + + [video.width: setAttribute() to -1] + expected: FAIL + + [video.width: setAttribute() to 0] + expected: FAIL + + [video.width: setAttribute() to 1] + expected: FAIL + + [video.width: setAttribute() to 257] + expected: FAIL + + [video.width: setAttribute() to 2147483647] + expected: FAIL + + [video.width: setAttribute() to 2147483648] + expected: FAIL + + [video.width: setAttribute() to 4294967295] + expected: FAIL + + [video.width: setAttribute() to 4294967296] + expected: FAIL + + [video.width: setAttribute() to ""] + expected: FAIL + + [video.width: setAttribute() to "-"] + expected: FAIL + + [video.width: setAttribute() to "+"] + expected: FAIL + + [video.width: setAttribute() to "-1"] + expected: FAIL + + [video.width: setAttribute() to "-0"] + expected: FAIL + + [video.width: setAttribute() to "0"] + expected: FAIL + + [video.width: setAttribute() to "1"] + expected: FAIL + + [video.width: setAttribute() to "\\t7"] + expected: FAIL + + [video.width: setAttribute() to "\\v7"] + expected: FAIL + + [video.width: setAttribute() to "\\f7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to "7"] + expected: FAIL + + [video.width: setAttribute() to "\\n7"] + expected: FAIL + + [video.width: setAttribute() to "\\r7"] + expected: FAIL + + [video.width: setAttribute() to "
7"] + expected: FAIL + + [video.width: setAttribute() to "
7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to "7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to " 7"] + expected: FAIL + + [video.width: setAttribute() to "\\t\\v7"] + expected: FAIL + + [video.width: setAttribute() to "\\n\\v7"] + expected: FAIL + + [video.width: setAttribute() to "\\f\\v7"] + expected: FAIL + + [video.width: setAttribute() to "\\r\\v7"] + expected: FAIL + + [video.width: setAttribute() to " \\v7"] + expected: FAIL + + [video.width: setAttribute() to "7\\v"] + expected: FAIL + + [video.width: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [video.width: setAttribute() to undefined] + expected: FAIL + + [video.width: setAttribute() to 1.5] + expected: FAIL + + [video.width: setAttribute() to "5%"] + expected: FAIL + + [video.width: setAttribute() to "+100"] + expected: FAIL + + [video.width: setAttribute() to ".5"] + expected: FAIL + + [video.width: setAttribute() to true] + expected: FAIL + + [video.width: setAttribute() to false] + expected: FAIL + + [video.width: setAttribute() to object "[object Object\]"] + expected: FAIL + + [video.width: setAttribute() to NaN] + expected: FAIL + + [video.width: setAttribute() to Infinity] + expected: FAIL + + [video.width: setAttribute() to -Infinity] + expected: FAIL + + [video.width: setAttribute() to "\\0"] + expected: FAIL + + [video.width: setAttribute() to object "2"] + expected: FAIL + + [video.width: setAttribute() to object "3"] + expected: FAIL + + [video.width: IDL set to 0] + expected: FAIL + + [video.width: IDL set to 1] + expected: FAIL + + [video.width: IDL set to 257] + expected: FAIL + + [video.width: IDL set to 2147483647] + expected: FAIL + + [video.width: IDL set to "-0"] + expected: FAIL + + [video.width: IDL set to 2147483648] + expected: FAIL + + [video.width: IDL set to 4294967295] + expected: FAIL + + [video.height: typeof IDL attribute] + expected: FAIL + + [video.height: IDL get with DOM attribute unset] + expected: FAIL + + [video.height: setAttribute() to -2147483649] + expected: FAIL + + [video.height: setAttribute() to -2147483648] + expected: FAIL + + [video.height: setAttribute() to -36] + expected: FAIL + + [video.height: setAttribute() to -1] + expected: FAIL + + [video.height: setAttribute() to 0] + expected: FAIL + + [video.height: setAttribute() to 1] + expected: FAIL + + [video.height: setAttribute() to 257] + expected: FAIL + + [video.height: setAttribute() to 2147483647] + expected: FAIL + + [video.height: setAttribute() to 2147483648] + expected: FAIL + + [video.height: setAttribute() to 4294967295] + expected: FAIL + + [video.height: setAttribute() to 4294967296] + expected: FAIL + + [video.height: setAttribute() to ""] + expected: FAIL + + [video.height: setAttribute() to "-"] + expected: FAIL + + [video.height: setAttribute() to "+"] + expected: FAIL + + [video.height: setAttribute() to "-1"] + expected: FAIL + + [video.height: setAttribute() to "-0"] + expected: FAIL + + [video.height: setAttribute() to "0"] + expected: FAIL + + [video.height: setAttribute() to "1"] + expected: FAIL + + [video.height: setAttribute() to "\\t7"] + expected: FAIL + + [video.height: setAttribute() to "\\v7"] + expected: FAIL + + [video.height: setAttribute() to "\\f7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to "7"] + expected: FAIL + + [video.height: setAttribute() to "\\n7"] + expected: FAIL + + [video.height: setAttribute() to "\\r7"] + expected: FAIL + + [video.height: setAttribute() to "
7"] + expected: FAIL + + [video.height: setAttribute() to "
7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to "7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to " 7"] + expected: FAIL + + [video.height: setAttribute() to "\\t\\v7"] + expected: FAIL + + [video.height: setAttribute() to "\\n\\v7"] + expected: FAIL + + [video.height: setAttribute() to "\\f\\v7"] + expected: FAIL + + [video.height: setAttribute() to "\\r\\v7"] + expected: FAIL + + [video.height: setAttribute() to " \\v7"] + expected: FAIL + + [video.height: setAttribute() to "7\\v"] + expected: FAIL + + [video.height: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [video.height: setAttribute() to undefined] + expected: FAIL + + [video.height: setAttribute() to 1.5] + expected: FAIL + + [video.height: setAttribute() to "5%"] + expected: FAIL + + [video.height: setAttribute() to "+100"] + expected: FAIL + + [video.height: setAttribute() to ".5"] + expected: FAIL + + [video.height: setAttribute() to true] + expected: FAIL + + [video.height: setAttribute() to false] + expected: FAIL + + [video.height: setAttribute() to object "[object Object\]"] + expected: FAIL + + [video.height: setAttribute() to NaN] + expected: FAIL + + [video.height: setAttribute() to Infinity] + expected: FAIL + + [video.height: setAttribute() to -Infinity] + expected: FAIL + + [video.height: setAttribute() to "\\0"] + expected: FAIL + + [video.height: setAttribute() to object "2"] + expected: FAIL + + [video.height: setAttribute() to object "3"] + expected: FAIL + + [video.height: IDL set to 0] + expected: FAIL + + [video.height: IDL set to 1] + expected: FAIL + + [video.height: IDL set to 257] + expected: FAIL + + [video.height: IDL set to 2147483647] + expected: FAIL + + [video.height: IDL set to "-0"] + expected: FAIL + + [video.height: IDL set to 2147483648] + expected: FAIL + + [video.height: IDL set to 4294967295] + expected: FAIL + + [video.poster: setAttribute() to ""] + expected: FAIL + + [video.poster: setAttribute() to " foo "] + expected: FAIL + + [video.poster: setAttribute() to "//site.example/path???@#l"] + expected: FAIL + + [video.poster: setAttribute() to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [video.poster: setAttribute() to undefined] + expected: FAIL + + [video.poster: setAttribute() to 7] + expected: FAIL + + [video.poster: setAttribute() to 1.5] + expected: FAIL + + [video.poster: setAttribute() to "5%"] + expected: FAIL + + [video.poster: setAttribute() to "+100"] + expected: FAIL + + [video.poster: setAttribute() to ".5"] + expected: FAIL + + [video.poster: setAttribute() to true] + expected: FAIL + + [video.poster: setAttribute() to false] + expected: FAIL + + [video.poster: setAttribute() to object "[object Object\]"] + expected: FAIL + + [video.poster: setAttribute() to NaN] + expected: FAIL + + [video.poster: setAttribute() to Infinity] + expected: FAIL + + [video.poster: setAttribute() to -Infinity] + expected: FAIL + + [video.poster: setAttribute() to "\\0"] + expected: FAIL + + [video.poster: setAttribute() to null] + expected: FAIL + + [video.poster: setAttribute() to object "test-toString"] + expected: FAIL + + [video.poster: setAttribute() to object "test-valueOf"] + expected: FAIL + + [video.poster: IDL set to ""] + expected: FAIL + + [video.poster: IDL set to " foo "] + expected: FAIL + + [video.poster: IDL set to "//site.example/path???@#l"] + expected: FAIL + + [video.poster: IDL set to "\\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f "] + expected: FAIL + + [video.poster: IDL set to undefined] + expected: FAIL + + [video.poster: IDL set to 7] + expected: FAIL + + [video.poster: IDL set to 1.5] + expected: FAIL + + [video.poster: IDL set to "5%"] + expected: FAIL + + [video.poster: IDL set to "+100"] + expected: FAIL + + [video.poster: IDL set to ".5"] + expected: FAIL + + [video.poster: IDL set to true] + expected: FAIL + + [video.poster: IDL set to false] + expected: FAIL + + [video.poster: IDL set to object "[object Object\]"] + expected: FAIL + + [video.poster: IDL set to NaN] + expected: FAIL + + [video.poster: IDL set to Infinity] + expected: FAIL + + [video.poster: IDL set to -Infinity] + expected: FAIL + + [video.poster: IDL set to "\\0"] + expected: FAIL + + [video.poster: IDL set to null] + expected: FAIL + + [video.poster: IDL set to object "test-toString"] + expected: FAIL + + [video.poster: IDL set to object "test-valueOf"] + expected: FAIL + + [video.playsInline: typeof IDL attribute] + expected: FAIL + + [video.playsInline: IDL get with DOM attribute unset] + expected: FAIL + + [video.playsInline: setAttribute() to ""] + expected: FAIL + + [video.playsInline: setAttribute() to " foo "] + expected: FAIL + + [video.playsInline: setAttribute() to undefined] + expected: FAIL + + [video.playsInline: setAttribute() to null] + expected: FAIL + + [video.playsInline: setAttribute() to 7] + expected: FAIL + + [video.playsInline: setAttribute() to 1.5] + expected: FAIL + + [video.playsInline: setAttribute() to "5%"] + expected: FAIL + + [video.playsInline: setAttribute() to "+100"] + expected: FAIL + + [video.playsInline: setAttribute() to ".5"] + expected: FAIL + + [video.playsInline: setAttribute() to true] + expected: FAIL + + [video.playsInline: setAttribute() to false] + expected: FAIL + + [video.playsInline: setAttribute() to object "[object Object\]"] + expected: FAIL + + [video.playsInline: setAttribute() to NaN] + expected: FAIL + + [video.playsInline: setAttribute() to Infinity] + expected: FAIL + + [video.playsInline: setAttribute() to -Infinity] + expected: FAIL + + [video.playsInline: setAttribute() to "\\0"] + expected: FAIL + + [video.playsInline: setAttribute() to object "test-toString"] + expected: FAIL + + [video.playsInline: setAttribute() to object "test-valueOf"] + expected: FAIL + + [video.playsInline: setAttribute() to "playsInline"] + expected: FAIL + + [video.playsInline: IDL set to ""] + expected: FAIL + + [video.playsInline: IDL set to " foo "] + expected: FAIL + + [video.playsInline: IDL set to undefined] + expected: FAIL + + [video.playsInline: IDL set to null] + expected: FAIL + + [video.playsInline: IDL set to 7] + expected: FAIL + + [video.playsInline: IDL set to 1.5] + expected: FAIL + + [video.playsInline: IDL set to "5%"] + expected: FAIL + + [video.playsInline: IDL set to "+100"] + expected: FAIL + + [video.playsInline: IDL set to ".5"] + expected: FAIL + + [video.playsInline: IDL set to false] + expected: FAIL + + [video.playsInline: IDL set to object "[object Object\]"] + expected: FAIL + + [video.playsInline: IDL set to NaN] + expected: FAIL + + [video.playsInline: IDL set to Infinity] + expected: FAIL + + [video.playsInline: IDL set to -Infinity] + expected: FAIL + + [video.playsInline: IDL set to "\\0"] + expected: FAIL + + [video.playsInline: IDL set to object "test-toString"] + expected: FAIL + + [video.playsInline: IDL set to object "test-valueOf"] + expected: FAIL + + [audio.accessKey: typeof IDL attribute] + expected: FAIL + + [audio.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [audio.accessKey: setAttribute() to ""] + expected: FAIL + + [audio.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [audio.accessKey: setAttribute() to undefined] + expected: FAIL + + [audio.accessKey: setAttribute() to 7] + expected: FAIL + + [audio.accessKey: setAttribute() to 1.5] + expected: FAIL + + [audio.accessKey: setAttribute() to "5%"] + expected: FAIL + + [audio.accessKey: setAttribute() to "+100"] + expected: FAIL + + [audio.accessKey: setAttribute() to ".5"] + expected: FAIL + + [audio.accessKey: setAttribute() to true] + expected: FAIL + + [audio.accessKey: setAttribute() to false] + expected: FAIL + + [audio.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [audio.accessKey: setAttribute() to NaN] + expected: FAIL + + [audio.accessKey: setAttribute() to Infinity] + expected: FAIL + + [audio.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [audio.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [audio.accessKey: setAttribute() to null] + expected: FAIL + + [audio.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [audio.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [audio.accessKey: IDL set to ""] + expected: FAIL + + [audio.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [audio.accessKey: IDL set to undefined] + expected: FAIL + + [audio.accessKey: IDL set to 7] + expected: FAIL + + [audio.accessKey: IDL set to 1.5] + expected: FAIL + + [audio.accessKey: IDL set to "5%"] + expected: FAIL + + [audio.accessKey: IDL set to "+100"] + expected: FAIL + + [audio.accessKey: IDL set to ".5"] + expected: FAIL + + [audio.accessKey: IDL set to true] + expected: FAIL + + [audio.accessKey: IDL set to false] + expected: FAIL + + [audio.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [audio.accessKey: IDL set to NaN] + expected: FAIL + + [audio.accessKey: IDL set to Infinity] + expected: FAIL + + [audio.accessKey: IDL set to -Infinity] + expected: FAIL + + [audio.accessKey: IDL set to "\\0"] + expected: FAIL + + [audio.accessKey: IDL set to null] + expected: FAIL + + [audio.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [audio.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [audio.tabIndex: typeof IDL attribute] + expected: FAIL + + [audio.tabIndex: setAttribute() to -36] + expected: FAIL + + [audio.tabIndex: setAttribute() to -1] + expected: FAIL + + [audio.tabIndex: setAttribute() to 0] + expected: FAIL + + [audio.tabIndex: setAttribute() to 1] + expected: FAIL + + [audio.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [audio.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [audio.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [audio.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [audio.tabIndex: setAttribute() to "0"] + expected: FAIL + + [audio.tabIndex: setAttribute() to "1"] + expected: FAIL + + [audio.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [audio.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [audio.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [audio.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [audio.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [audio.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [audio.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [audio.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [audio.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [audio.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [audio.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [audio.tabIndex: IDL set to -36] + expected: FAIL + + [audio.tabIndex: IDL set to -1] + expected: FAIL + + [audio.tabIndex: IDL set to 0] + expected: FAIL + + [audio.tabIndex: IDL set to 1] + expected: FAIL + + [audio.tabIndex: IDL set to 2147483647] + expected: FAIL + + [audio.tabIndex: IDL set to -2147483648] + expected: FAIL + + [source.accessKey: typeof IDL attribute] + expected: FAIL + + [source.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [source.accessKey: setAttribute() to ""] + expected: FAIL + + [source.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [source.accessKey: setAttribute() to undefined] + expected: FAIL + + [source.accessKey: setAttribute() to 7] + expected: FAIL + + [source.accessKey: setAttribute() to 1.5] + expected: FAIL + + [source.accessKey: setAttribute() to "5%"] + expected: FAIL + + [source.accessKey: setAttribute() to "+100"] + expected: FAIL + + [source.accessKey: setAttribute() to ".5"] + expected: FAIL + + [source.accessKey: setAttribute() to true] + expected: FAIL + + [source.accessKey: setAttribute() to false] + expected: FAIL + + [source.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [source.accessKey: setAttribute() to NaN] + expected: FAIL + + [source.accessKey: setAttribute() to Infinity] + expected: FAIL + + [source.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [source.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [source.accessKey: setAttribute() to null] + expected: FAIL + + [source.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [source.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [source.accessKey: IDL set to ""] + expected: FAIL + + [source.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [source.accessKey: IDL set to undefined] + expected: FAIL + + [source.accessKey: IDL set to 7] + expected: FAIL + + [source.accessKey: IDL set to 1.5] + expected: FAIL + + [source.accessKey: IDL set to "5%"] + expected: FAIL + + [source.accessKey: IDL set to "+100"] + expected: FAIL + + [source.accessKey: IDL set to ".5"] + expected: FAIL + + [source.accessKey: IDL set to true] + expected: FAIL + + [source.accessKey: IDL set to false] + expected: FAIL + + [source.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [source.accessKey: IDL set to NaN] + expected: FAIL + + [source.accessKey: IDL set to Infinity] + expected: FAIL + + [source.accessKey: IDL set to -Infinity] + expected: FAIL + + [source.accessKey: IDL set to "\\0"] + expected: FAIL + + [source.accessKey: IDL set to null] + expected: FAIL + + [source.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [source.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [source.tabIndex: typeof IDL attribute] + expected: FAIL + + [source.tabIndex: setAttribute() to -36] + expected: FAIL + + [source.tabIndex: setAttribute() to -1] + expected: FAIL + + [source.tabIndex: setAttribute() to 0] + expected: FAIL + + [source.tabIndex: setAttribute() to 1] + expected: FAIL + + [source.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [source.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [source.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [source.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [source.tabIndex: setAttribute() to "0"] + expected: FAIL + + [source.tabIndex: setAttribute() to "1"] + expected: FAIL + + [source.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [source.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [source.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [source.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [source.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [source.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [source.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [source.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [source.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [source.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [source.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [source.tabIndex: IDL set to -36] + expected: FAIL + + [source.tabIndex: IDL set to -1] + expected: FAIL + + [source.tabIndex: IDL set to 0] + expected: FAIL + + [source.tabIndex: IDL set to 1] + expected: FAIL + + [source.tabIndex: IDL set to 2147483647] + expected: FAIL + + [source.tabIndex: IDL set to -2147483648] + expected: FAIL + + [source.srcset: setAttribute() to ""] + expected: FAIL + + [source.srcset: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [source.srcset: setAttribute() to undefined] + expected: FAIL + + [source.srcset: setAttribute() to 7] + expected: FAIL + + [source.srcset: setAttribute() to 1.5] + expected: FAIL + + [source.srcset: setAttribute() to "5%"] + expected: FAIL + + [source.srcset: setAttribute() to "+100"] + expected: FAIL + + [source.srcset: setAttribute() to ".5"] + expected: FAIL + + [source.srcset: setAttribute() to true] + expected: FAIL + + [source.srcset: setAttribute() to false] + expected: FAIL + + [source.srcset: setAttribute() to object "[object Object\]"] + expected: FAIL + + [source.srcset: setAttribute() to NaN] + expected: FAIL + + [source.srcset: setAttribute() to Infinity] + expected: FAIL + + [source.srcset: setAttribute() to -Infinity] + expected: FAIL + + [source.srcset: setAttribute() to "\\0"] + expected: FAIL + + [source.srcset: setAttribute() to null] + expected: FAIL + + [source.srcset: setAttribute() to object "test-toString"] + expected: FAIL + + [source.srcset: setAttribute() to object "test-valueOf"] + expected: FAIL + + [source.srcset: IDL set to ""] + expected: FAIL + + [source.srcset: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [source.srcset: IDL set to undefined] + expected: FAIL + + [source.srcset: IDL set to 7] + expected: FAIL + + [source.srcset: IDL set to 1.5] + expected: FAIL + + [source.srcset: IDL set to "5%"] + expected: FAIL + + [source.srcset: IDL set to "+100"] + expected: FAIL + + [source.srcset: IDL set to ".5"] + expected: FAIL + + [source.srcset: IDL set to true] + expected: FAIL + + [source.srcset: IDL set to false] + expected: FAIL + + [source.srcset: IDL set to object "[object Object\]"] + expected: FAIL + + [source.srcset: IDL set to NaN] + expected: FAIL + + [source.srcset: IDL set to Infinity] + expected: FAIL + + [source.srcset: IDL set to -Infinity] + expected: FAIL + + [source.srcset: IDL set to "\\0"] + expected: FAIL + + [source.srcset: IDL set to null] + expected: FAIL + + [source.srcset: IDL set to object "test-toString"] + expected: FAIL + + [source.srcset: IDL set to object "test-valueOf"] + expected: FAIL + + [track.accessKey: typeof IDL attribute] + expected: FAIL + + [track.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [track.accessKey: setAttribute() to ""] + expected: FAIL + + [track.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [track.accessKey: setAttribute() to undefined] + expected: FAIL + + [track.accessKey: setAttribute() to 7] + expected: FAIL + + [track.accessKey: setAttribute() to 1.5] + expected: FAIL + + [track.accessKey: setAttribute() to "5%"] + expected: FAIL + + [track.accessKey: setAttribute() to "+100"] + expected: FAIL + + [track.accessKey: setAttribute() to ".5"] + expected: FAIL + + [track.accessKey: setAttribute() to true] + expected: FAIL + + [track.accessKey: setAttribute() to false] + expected: FAIL + + [track.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [track.accessKey: setAttribute() to NaN] + expected: FAIL + + [track.accessKey: setAttribute() to Infinity] + expected: FAIL + + [track.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [track.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [track.accessKey: setAttribute() to null] + expected: FAIL + + [track.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [track.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [track.accessKey: IDL set to ""] + expected: FAIL + + [track.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [track.accessKey: IDL set to undefined] + expected: FAIL + + [track.accessKey: IDL set to 7] + expected: FAIL + + [track.accessKey: IDL set to 1.5] + expected: FAIL + + [track.accessKey: IDL set to "5%"] + expected: FAIL + + [track.accessKey: IDL set to "+100"] + expected: FAIL + + [track.accessKey: IDL set to ".5"] + expected: FAIL + + [track.accessKey: IDL set to true] + expected: FAIL + + [track.accessKey: IDL set to false] + expected: FAIL + + [track.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [track.accessKey: IDL set to NaN] + expected: FAIL + + [track.accessKey: IDL set to Infinity] + expected: FAIL + + [track.accessKey: IDL set to -Infinity] + expected: FAIL + + [track.accessKey: IDL set to "\\0"] + expected: FAIL + + [track.accessKey: IDL set to null] + expected: FAIL + + [track.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [track.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [track.tabIndex: typeof IDL attribute] + expected: FAIL + + [track.tabIndex: setAttribute() to -36] + expected: FAIL + + [track.tabIndex: setAttribute() to -1] + expected: FAIL + + [track.tabIndex: setAttribute() to 0] + expected: FAIL + + [track.tabIndex: setAttribute() to 1] + expected: FAIL + + [track.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [track.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [track.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [track.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [track.tabIndex: setAttribute() to "0"] + expected: FAIL + + [track.tabIndex: setAttribute() to "1"] + expected: FAIL + + [track.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [track.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [track.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [track.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [track.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [track.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [track.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [track.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [track.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [track.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [track.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [track.tabIndex: IDL set to -36] + expected: FAIL + + [track.tabIndex: IDL set to -1] + expected: FAIL + + [track.tabIndex: IDL set to 0] + expected: FAIL + + [track.tabIndex: IDL set to 1] + expected: FAIL + + [track.tabIndex: IDL set to 2147483647] + expected: FAIL + + [track.tabIndex: IDL set to -2147483648] + expected: FAIL + + [track.kind: setAttribute() to ""] + expected: FAIL + + [track.kind: IDL set to ""] + expected: FAIL + + [canvas.accessKey: typeof IDL attribute] + expected: FAIL + + [canvas.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [canvas.accessKey: setAttribute() to ""] + expected: FAIL + + [canvas.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [canvas.accessKey: setAttribute() to undefined] + expected: FAIL + + [canvas.accessKey: setAttribute() to 7] + expected: FAIL + + [canvas.accessKey: setAttribute() to 1.5] + expected: FAIL + + [canvas.accessKey: setAttribute() to "5%"] + expected: FAIL + + [canvas.accessKey: setAttribute() to "+100"] + expected: FAIL + + [canvas.accessKey: setAttribute() to ".5"] + expected: FAIL + + [canvas.accessKey: setAttribute() to true] + expected: FAIL + + [canvas.accessKey: setAttribute() to false] + expected: FAIL + + [canvas.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [canvas.accessKey: setAttribute() to NaN] + expected: FAIL + + [canvas.accessKey: setAttribute() to Infinity] + expected: FAIL + + [canvas.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [canvas.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [canvas.accessKey: setAttribute() to null] + expected: FAIL + + [canvas.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [canvas.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [canvas.accessKey: IDL set to ""] + expected: FAIL + + [canvas.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [canvas.accessKey: IDL set to undefined] + expected: FAIL + + [canvas.accessKey: IDL set to 7] + expected: FAIL + + [canvas.accessKey: IDL set to 1.5] + expected: FAIL + + [canvas.accessKey: IDL set to "5%"] + expected: FAIL + + [canvas.accessKey: IDL set to "+100"] + expected: FAIL + + [canvas.accessKey: IDL set to ".5"] + expected: FAIL + + [canvas.accessKey: IDL set to true] + expected: FAIL + + [canvas.accessKey: IDL set to false] + expected: FAIL + + [canvas.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [canvas.accessKey: IDL set to NaN] + expected: FAIL + + [canvas.accessKey: IDL set to Infinity] + expected: FAIL + + [canvas.accessKey: IDL set to -Infinity] + expected: FAIL + + [canvas.accessKey: IDL set to "\\0"] + expected: FAIL + + [canvas.accessKey: IDL set to null] + expected: FAIL + + [canvas.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [canvas.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [canvas.tabIndex: typeof IDL attribute] + expected: FAIL + + [canvas.tabIndex: setAttribute() to -36] + expected: FAIL + + [canvas.tabIndex: setAttribute() to -1] + expected: FAIL + + [canvas.tabIndex: setAttribute() to 0] + expected: FAIL + + [canvas.tabIndex: setAttribute() to 1] + expected: FAIL + + [canvas.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [canvas.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [canvas.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to "0"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to "1"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [canvas.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [canvas.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [canvas.tabIndex: IDL set to -36] + expected: FAIL + + [canvas.tabIndex: IDL set to -1] + expected: FAIL + + [canvas.tabIndex: IDL set to 0] + expected: FAIL + + [canvas.tabIndex: IDL set to 1] + expected: FAIL + + [canvas.tabIndex: IDL set to 2147483647] + expected: FAIL + + [canvas.tabIndex: IDL set to -2147483648] + expected: FAIL + + [map.accessKey: typeof IDL attribute] + expected: FAIL + + [map.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [map.accessKey: setAttribute() to ""] + expected: FAIL + + [map.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [map.accessKey: setAttribute() to undefined] + expected: FAIL + + [map.accessKey: setAttribute() to 7] + expected: FAIL + + [map.accessKey: setAttribute() to 1.5] + expected: FAIL + + [map.accessKey: setAttribute() to "5%"] + expected: FAIL + + [map.accessKey: setAttribute() to "+100"] + expected: FAIL + + [map.accessKey: setAttribute() to ".5"] + expected: FAIL + + [map.accessKey: setAttribute() to true] + expected: FAIL + + [map.accessKey: setAttribute() to false] + expected: FAIL + + [map.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [map.accessKey: setAttribute() to NaN] + expected: FAIL + + [map.accessKey: setAttribute() to Infinity] + expected: FAIL + + [map.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [map.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [map.accessKey: setAttribute() to null] + expected: FAIL + + [map.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [map.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [map.accessKey: IDL set to ""] + expected: FAIL + + [map.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [map.accessKey: IDL set to undefined] + expected: FAIL + + [map.accessKey: IDL set to 7] + expected: FAIL + + [map.accessKey: IDL set to 1.5] + expected: FAIL + + [map.accessKey: IDL set to "5%"] + expected: FAIL + + [map.accessKey: IDL set to "+100"] + expected: FAIL + + [map.accessKey: IDL set to ".5"] + expected: FAIL + + [map.accessKey: IDL set to true] + expected: FAIL + + [map.accessKey: IDL set to false] + expected: FAIL + + [map.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [map.accessKey: IDL set to NaN] + expected: FAIL + + [map.accessKey: IDL set to Infinity] + expected: FAIL + + [map.accessKey: IDL set to -Infinity] + expected: FAIL + + [map.accessKey: IDL set to "\\0"] + expected: FAIL + + [map.accessKey: IDL set to null] + expected: FAIL + + [map.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [map.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [map.tabIndex: typeof IDL attribute] + expected: FAIL + + [map.tabIndex: setAttribute() to -36] + expected: FAIL + + [map.tabIndex: setAttribute() to -1] + expected: FAIL + + [map.tabIndex: setAttribute() to 0] + expected: FAIL + + [map.tabIndex: setAttribute() to 1] + expected: FAIL + + [map.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [map.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [map.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [map.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [map.tabIndex: setAttribute() to "0"] + expected: FAIL + + [map.tabIndex: setAttribute() to "1"] + expected: FAIL + + [map.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [map.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [map.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [map.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [map.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [map.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [map.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [map.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [map.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [map.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [map.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [map.tabIndex: IDL set to -36] + expected: FAIL + + [map.tabIndex: IDL set to -1] + expected: FAIL + + [map.tabIndex: IDL set to 0] + expected: FAIL + + [map.tabIndex: IDL set to 1] + expected: FAIL + + [map.tabIndex: IDL set to 2147483647] + expected: FAIL + + [map.tabIndex: IDL set to -2147483648] + expected: FAIL + + [map.name: typeof IDL attribute] + expected: FAIL + + [map.name: IDL get with DOM attribute unset] + expected: FAIL + + [map.name: setAttribute() to ""] + expected: FAIL + + [map.name: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [map.name: setAttribute() to undefined] + expected: FAIL + + [map.name: setAttribute() to 7] + expected: FAIL + + [map.name: setAttribute() to 1.5] + expected: FAIL + + [map.name: setAttribute() to "5%"] + expected: FAIL + + [map.name: setAttribute() to "+100"] + expected: FAIL + + [map.name: setAttribute() to ".5"] + expected: FAIL + + [map.name: setAttribute() to true] + expected: FAIL + + [map.name: setAttribute() to false] + expected: FAIL + + [map.name: setAttribute() to object "[object Object\]"] + expected: FAIL + + [map.name: setAttribute() to NaN] + expected: FAIL + + [map.name: setAttribute() to Infinity] + expected: FAIL + + [map.name: setAttribute() to -Infinity] + expected: FAIL + + [map.name: setAttribute() to "\\0"] + expected: FAIL + + [map.name: setAttribute() to null] + expected: FAIL + + [map.name: setAttribute() to object "test-toString"] + expected: FAIL + + [map.name: setAttribute() to object "test-valueOf"] + expected: FAIL + + [map.name: IDL set to ""] + expected: FAIL + + [map.name: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [map.name: IDL set to undefined] + expected: FAIL + + [map.name: IDL set to 7] + expected: FAIL + + [map.name: IDL set to 1.5] + expected: FAIL + + [map.name: IDL set to "5%"] + expected: FAIL + + [map.name: IDL set to "+100"] + expected: FAIL + + [map.name: IDL set to ".5"] + expected: FAIL + + [map.name: IDL set to true] + expected: FAIL + + [map.name: IDL set to false] + expected: FAIL + + [map.name: IDL set to object "[object Object\]"] + expected: FAIL + + [map.name: IDL set to NaN] + expected: FAIL + + [map.name: IDL set to Infinity] + expected: FAIL + + [map.name: IDL set to -Infinity] + expected: FAIL + + [map.name: IDL set to "\\0"] + expected: FAIL + + [map.name: IDL set to null] + expected: FAIL + + [map.name: IDL set to object "test-toString"] + expected: FAIL + + [map.name: IDL set to object "test-valueOf"] + expected: FAIL + + [area.accessKey: typeof IDL attribute] + expected: FAIL + + [area.accessKey: IDL get with DOM attribute unset] + expected: FAIL + + [area.accessKey: setAttribute() to ""] + expected: FAIL + + [area.accessKey: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.accessKey: setAttribute() to undefined] + expected: FAIL + + [area.accessKey: setAttribute() to 7] + expected: FAIL + + [area.accessKey: setAttribute() to 1.5] + expected: FAIL + + [area.accessKey: setAttribute() to "5%"] + expected: FAIL + + [area.accessKey: setAttribute() to "+100"] + expected: FAIL + + [area.accessKey: setAttribute() to ".5"] + expected: FAIL + + [area.accessKey: setAttribute() to true] + expected: FAIL + + [area.accessKey: setAttribute() to false] + expected: FAIL + + [area.accessKey: setAttribute() to object "[object Object\]"] + expected: FAIL + + [area.accessKey: setAttribute() to NaN] + expected: FAIL + + [area.accessKey: setAttribute() to Infinity] + expected: FAIL + + [area.accessKey: setAttribute() to -Infinity] + expected: FAIL + + [area.accessKey: setAttribute() to "\\0"] + expected: FAIL + + [area.accessKey: setAttribute() to null] + expected: FAIL + + [area.accessKey: setAttribute() to object "test-toString"] + expected: FAIL + + [area.accessKey: setAttribute() to object "test-valueOf"] + expected: FAIL + + [area.accessKey: IDL set to ""] + expected: FAIL + + [area.accessKey: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.accessKey: IDL set to undefined] + expected: FAIL + + [area.accessKey: IDL set to 7] + expected: FAIL + + [area.accessKey: IDL set to 1.5] + expected: FAIL + + [area.accessKey: IDL set to "5%"] + expected: FAIL + + [area.accessKey: IDL set to "+100"] + expected: FAIL + + [area.accessKey: IDL set to ".5"] + expected: FAIL + + [area.accessKey: IDL set to true] + expected: FAIL + + [area.accessKey: IDL set to false] + expected: FAIL + + [area.accessKey: IDL set to object "[object Object\]"] + expected: FAIL + + [area.accessKey: IDL set to NaN] + expected: FAIL + + [area.accessKey: IDL set to Infinity] + expected: FAIL + + [area.accessKey: IDL set to -Infinity] + expected: FAIL + + [area.accessKey: IDL set to "\\0"] + expected: FAIL + + [area.accessKey: IDL set to null] + expected: FAIL + + [area.accessKey: IDL set to object "test-toString"] + expected: FAIL + + [area.accessKey: IDL set to object "test-valueOf"] + expected: FAIL + + [area.tabIndex: typeof IDL attribute] + expected: FAIL + + [area.tabIndex: setAttribute() to -36] + expected: FAIL + + [area.tabIndex: setAttribute() to -1] + expected: FAIL + + [area.tabIndex: setAttribute() to 0] + expected: FAIL + + [area.tabIndex: setAttribute() to 1] + expected: FAIL + + [area.tabIndex: setAttribute() to 2147483647] + expected: FAIL + + [area.tabIndex: setAttribute() to -2147483648] + expected: FAIL + + [area.tabIndex: setAttribute() to "-1"] + expected: FAIL + + [area.tabIndex: setAttribute() to "-0"] + expected: FAIL + + [area.tabIndex: setAttribute() to "0"] + expected: FAIL + + [area.tabIndex: setAttribute() to "1"] + expected: FAIL + + [area.tabIndex: setAttribute() to "\\t7"] + expected: FAIL + + [area.tabIndex: setAttribute() to "\\f7"] + expected: FAIL + + [area.tabIndex: setAttribute() to " 7"] + expected: FAIL + + [area.tabIndex: setAttribute() to "\\n7"] + expected: FAIL + + [area.tabIndex: setAttribute() to "\\r7"] + expected: FAIL + + [area.tabIndex: setAttribute() to "7\\v"] + expected: FAIL + + [area.tabIndex: setAttribute() to 1.5] + expected: FAIL + + [area.tabIndex: setAttribute() to "5%"] + expected: FAIL + + [area.tabIndex: setAttribute() to "+100"] + expected: FAIL + + [area.tabIndex: setAttribute() to object "2"] + expected: FAIL + + [area.tabIndex: setAttribute() to object "3"] + expected: FAIL + + [area.tabIndex: IDL set to -36] + expected: FAIL + + [area.tabIndex: IDL set to -1] + expected: FAIL + + [area.tabIndex: IDL set to 0] + expected: FAIL + + [area.tabIndex: IDL set to 1] + expected: FAIL + + [area.tabIndex: IDL set to 2147483647] + expected: FAIL + + [area.tabIndex: IDL set to -2147483648] + expected: FAIL + + [area.alt: typeof IDL attribute] + expected: FAIL + + [area.alt: IDL get with DOM attribute unset] + expected: FAIL + + [area.alt: setAttribute() to ""] + expected: FAIL + + [area.alt: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.alt: setAttribute() to undefined] + expected: FAIL + + [area.alt: setAttribute() to 7] + expected: FAIL + + [area.alt: setAttribute() to 1.5] + expected: FAIL + + [area.alt: setAttribute() to "5%"] + expected: FAIL + + [area.alt: setAttribute() to "+100"] + expected: FAIL + + [area.alt: setAttribute() to ".5"] + expected: FAIL + + [area.alt: setAttribute() to true] + expected: FAIL + + [area.alt: setAttribute() to false] + expected: FAIL + + [area.alt: setAttribute() to object "[object Object\]"] + expected: FAIL + + [area.alt: setAttribute() to NaN] + expected: FAIL + + [area.alt: setAttribute() to Infinity] + expected: FAIL + + [area.alt: setAttribute() to -Infinity] + expected: FAIL + + [area.alt: setAttribute() to "\\0"] + expected: FAIL + + [area.alt: setAttribute() to null] + expected: FAIL + + [area.alt: setAttribute() to object "test-toString"] + expected: FAIL + + [area.alt: setAttribute() to object "test-valueOf"] + expected: FAIL + + [area.alt: IDL set to ""] + expected: FAIL + + [area.alt: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.alt: IDL set to undefined] + expected: FAIL + + [area.alt: IDL set to 7] + expected: FAIL + + [area.alt: IDL set to 1.5] + expected: FAIL + + [area.alt: IDL set to "5%"] + expected: FAIL + + [area.alt: IDL set to "+100"] + expected: FAIL + + [area.alt: IDL set to ".5"] + expected: FAIL + + [area.alt: IDL set to true] + expected: FAIL + + [area.alt: IDL set to false] + expected: FAIL + + [area.alt: IDL set to object "[object Object\]"] + expected: FAIL + + [area.alt: IDL set to NaN] + expected: FAIL + + [area.alt: IDL set to Infinity] + expected: FAIL + + [area.alt: IDL set to -Infinity] + expected: FAIL + + [area.alt: IDL set to "\\0"] + expected: FAIL + + [area.alt: IDL set to null] + expected: FAIL + + [area.alt: IDL set to object "test-toString"] + expected: FAIL + + [area.alt: IDL set to object "test-valueOf"] + expected: FAIL + + [area.coords: typeof IDL attribute] + expected: FAIL + + [area.coords: IDL get with DOM attribute unset] + expected: FAIL + + [area.coords: setAttribute() to ""] + expected: FAIL + + [area.coords: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.coords: setAttribute() to undefined] + expected: FAIL + + [area.coords: setAttribute() to 7] + expected: FAIL + + [area.coords: setAttribute() to 1.5] + expected: FAIL + + [area.coords: setAttribute() to "5%"] + expected: FAIL + + [area.coords: setAttribute() to "+100"] + expected: FAIL + + [area.coords: setAttribute() to ".5"] + expected: FAIL + + [area.coords: setAttribute() to true] + expected: FAIL + + [area.coords: setAttribute() to false] + expected: FAIL + + [area.coords: setAttribute() to object "[object Object\]"] + expected: FAIL + + [area.coords: setAttribute() to NaN] + expected: FAIL + + [area.coords: setAttribute() to Infinity] + expected: FAIL + + [area.coords: setAttribute() to -Infinity] + expected: FAIL + + [area.coords: setAttribute() to "\\0"] + expected: FAIL + + [area.coords: setAttribute() to null] + expected: FAIL + + [area.coords: setAttribute() to object "test-toString"] + expected: FAIL + + [area.coords: setAttribute() to object "test-valueOf"] + expected: FAIL + + [area.coords: IDL set to ""] + expected: FAIL + + [area.coords: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.coords: IDL set to undefined] + expected: FAIL + + [area.coords: IDL set to 7] + expected: FAIL + + [area.coords: IDL set to 1.5] + expected: FAIL + + [area.coords: IDL set to "5%"] + expected: FAIL + + [area.coords: IDL set to "+100"] + expected: FAIL + + [area.coords: IDL set to ".5"] + expected: FAIL + + [area.coords: IDL set to true] + expected: FAIL + + [area.coords: IDL set to false] + expected: FAIL + + [area.coords: IDL set to object "[object Object\]"] + expected: FAIL + + [area.coords: IDL set to NaN] + expected: FAIL + + [area.coords: IDL set to Infinity] + expected: FAIL + + [area.coords: IDL set to -Infinity] + expected: FAIL + + [area.coords: IDL set to "\\0"] + expected: FAIL + + [area.coords: IDL set to null] + expected: FAIL + + [area.coords: IDL set to object "test-toString"] + expected: FAIL + + [area.coords: IDL set to object "test-valueOf"] + expected: FAIL + + [area.shape: typeof IDL attribute] + expected: FAIL + + [area.shape: IDL get with DOM attribute unset] + expected: FAIL + + [area.shape: setAttribute() to ""] + expected: FAIL + + [area.shape: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.shape: setAttribute() to undefined] + expected: FAIL + + [area.shape: setAttribute() to 7] + expected: FAIL + + [area.shape: setAttribute() to 1.5] + expected: FAIL + + [area.shape: setAttribute() to "5%"] + expected: FAIL + + [area.shape: setAttribute() to "+100"] + expected: FAIL + + [area.shape: setAttribute() to ".5"] + expected: FAIL + + [area.shape: setAttribute() to true] + expected: FAIL + + [area.shape: setAttribute() to false] + expected: FAIL + + [area.shape: setAttribute() to object "[object Object\]"] + expected: FAIL + + [area.shape: setAttribute() to NaN] + expected: FAIL + + [area.shape: setAttribute() to Infinity] + expected: FAIL + + [area.shape: setAttribute() to -Infinity] + expected: FAIL + + [area.shape: setAttribute() to "\\0"] + expected: FAIL + + [area.shape: setAttribute() to null] + expected: FAIL + + [area.shape: setAttribute() to object "test-toString"] + expected: FAIL + + [area.shape: setAttribute() to object "test-valueOf"] + expected: FAIL + + [area.shape: IDL set to ""] + expected: FAIL + + [area.shape: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.shape: IDL set to undefined] + expected: FAIL + + [area.shape: IDL set to 7] + expected: FAIL + + [area.shape: IDL set to 1.5] + expected: FAIL + + [area.shape: IDL set to "5%"] + expected: FAIL + + [area.shape: IDL set to "+100"] + expected: FAIL + + [area.shape: IDL set to ".5"] + expected: FAIL + + [area.shape: IDL set to true] + expected: FAIL + + [area.shape: IDL set to false] + expected: FAIL + + [area.shape: IDL set to object "[object Object\]"] + expected: FAIL + + [area.shape: IDL set to NaN] + expected: FAIL + + [area.shape: IDL set to Infinity] + expected: FAIL + + [area.shape: IDL set to -Infinity] + expected: FAIL + + [area.shape: IDL set to "\\0"] + expected: FAIL + + [area.shape: IDL set to null] + expected: FAIL + + [area.shape: IDL set to object "test-toString"] + expected: FAIL + + [area.shape: IDL set to object "test-valueOf"] + expected: FAIL + + [area.download: typeof IDL attribute] + expected: FAIL + + [area.download: IDL get with DOM attribute unset] + expected: FAIL + + [area.download: setAttribute() to ""] + expected: FAIL + + [area.download: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.download: setAttribute() to undefined] + expected: FAIL + + [area.download: setAttribute() to 7] + expected: FAIL + + [area.download: setAttribute() to 1.5] + expected: FAIL + + [area.download: setAttribute() to "5%"] + expected: FAIL + + [area.download: setAttribute() to "+100"] + expected: FAIL + + [area.download: setAttribute() to ".5"] + expected: FAIL + + [area.download: setAttribute() to true] + expected: FAIL + + [area.download: setAttribute() to false] + expected: FAIL + + [area.download: setAttribute() to object "[object Object\]"] + expected: FAIL + + [area.download: setAttribute() to NaN] + expected: FAIL + + [area.download: setAttribute() to Infinity] + expected: FAIL + + [area.download: setAttribute() to -Infinity] + expected: FAIL + + [area.download: setAttribute() to "\\0"] + expected: FAIL + + [area.download: setAttribute() to null] + expected: FAIL + + [area.download: setAttribute() to object "test-toString"] + expected: FAIL + + [area.download: setAttribute() to object "test-valueOf"] + expected: FAIL + + [area.download: IDL set to ""] + expected: FAIL + + [area.download: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.download: IDL set to undefined] + expected: FAIL + + [area.download: IDL set to 7] + expected: FAIL + + [area.download: IDL set to 1.5] + expected: FAIL + + [area.download: IDL set to "5%"] + expected: FAIL + + [area.download: IDL set to "+100"] + expected: FAIL + + [area.download: IDL set to ".5"] + expected: FAIL + + [area.download: IDL set to true] + expected: FAIL + + [area.download: IDL set to false] + expected: FAIL + + [area.download: IDL set to object "[object Object\]"] + expected: FAIL + + [area.download: IDL set to NaN] + expected: FAIL + + [area.download: IDL set to Infinity] + expected: FAIL + + [area.download: IDL set to -Infinity] + expected: FAIL + + [area.download: IDL set to "\\0"] + expected: FAIL + + [area.download: IDL set to null] + expected: FAIL + + [area.download: IDL set to object "test-toString"] + expected: FAIL + + [area.download: IDL set to object "test-valueOf"] + expected: FAIL + + [area.ping: typeof IDL attribute] + expected: FAIL + + [area.ping: IDL get with DOM attribute unset] + expected: FAIL + + [area.ping: setAttribute() to ""] + expected: FAIL + + [area.ping: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.ping: setAttribute() to undefined] + expected: FAIL + + [area.ping: setAttribute() to 7] + expected: FAIL + + [area.ping: setAttribute() to 1.5] + expected: FAIL + + [area.ping: setAttribute() to "5%"] + expected: FAIL + + [area.ping: setAttribute() to "+100"] + expected: FAIL + + [area.ping: setAttribute() to ".5"] + expected: FAIL + + [area.ping: setAttribute() to true] + expected: FAIL + + [area.ping: setAttribute() to false] + expected: FAIL + + [area.ping: setAttribute() to object "[object Object\]"] + expected: FAIL + + [area.ping: setAttribute() to NaN] + expected: FAIL + + [area.ping: setAttribute() to Infinity] + expected: FAIL + + [area.ping: setAttribute() to -Infinity] + expected: FAIL + + [area.ping: setAttribute() to "\\0"] + expected: FAIL + + [area.ping: setAttribute() to null] + expected: FAIL + + [area.ping: setAttribute() to object "test-toString"] + expected: FAIL + + [area.ping: setAttribute() to object "test-valueOf"] + expected: FAIL + + [area.ping: IDL set to ""] + expected: FAIL + + [area.ping: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo "] + expected: FAIL + + [area.ping: IDL set to undefined] + expected: FAIL + + [area.ping: IDL set to 7] + expected: FAIL + + [area.ping: IDL set to 1.5] + expected: FAIL + + [area.ping: IDL set to "5%"] + expected: FAIL + + [area.ping: IDL set to "+100"] + expected: FAIL + + [area.ping: IDL set to ".5"] + expected: FAIL + + [area.ping: IDL set to true] + expected: FAIL + + [area.ping: IDL set to false] + expected: FAIL + + [area.ping: IDL set to object "[object Object\]"] + expected: FAIL + + [area.ping: IDL set to NaN] + expected: FAIL + + [area.ping: IDL set to Infinity] + expected: FAIL + + [area.ping: IDL set to -Infinity] + expected: FAIL + + [area.ping: IDL set to "\\0"] + expected: FAIL + + [area.ping: IDL set to null] + expected: FAIL + + [area.ping: IDL set to object "test-toString"] + expected: FAIL + + [area.ping: IDL set to object "test-valueOf"] + expected: FAIL + + [area.noHref: typeof IDL attribute] + expected: FAIL + + [area.noHref: IDL get with DOM attribute unset] + expected: FAIL + + [area.noHref: setAttribute() to ""] + expected: FAIL + + [area.noHref: setAttribute() to " foo "] + expected: FAIL + + [area.noHref: setAttribute() to undefined] + expected: FAIL + + [area.noHref: setAttribute() to null] + expected: FAIL + + [area.noHref: setAttribute() to 7] + expected: FAIL + + [area.noHref: setAttribute() to 1.5] + expected: FAIL + + [area.noHref: setAttribute() to "5%"] + expected: FAIL + + [area.noHref: setAttribute() to "+100"] + expected: FAIL + + [area.noHref: setAttribute() to ".5"] + expected: FAIL + + [area.noHref: setAttribute() to true] + expected: FAIL + + [area.noHref: setAttribute() to false] + expected: FAIL + + [area.noHref: setAttribute() to object "[object Object\]"] + expected: FAIL + + [area.noHref: setAttribute() to NaN] + expected: FAIL + + [area.noHref: setAttribute() to Infinity] + expected: FAIL + + [area.noHref: setAttribute() to -Infinity] + expected: FAIL + + [area.noHref: setAttribute() to "\\0"] + expected: FAIL + + [area.noHref: setAttribute() to object "test-toString"] + expected: FAIL + + [area.noHref: setAttribute() to object "test-valueOf"] + expected: FAIL + + [area.noHref: setAttribute() to "noHref"] + expected: FAIL + + [area.noHref: IDL set to ""] + expected: FAIL + + [area.noHref: IDL set to " foo "] + expected: FAIL + + [area.noHref: IDL set to undefined] + expected: FAIL + + [area.noHref: IDL set to null] + expected: FAIL + + [area.noHref: IDL set to 7] + expected: FAIL + + [area.noHref: IDL set to 1.5] + expected: FAIL + + [area.noHref: IDL set to "5%"] + expected: FAIL + + [area.noHref: IDL set to "+100"] + expected: FAIL + + [area.noHref: IDL set to ".5"] + expected: FAIL + + [area.noHref: IDL set to false] + expected: FAIL + + [area.noHref: IDL set to object "[object Object\]"] + expected: FAIL + + [area.noHref: IDL set to NaN] + expected: FAIL + + [area.noHref: IDL set to Infinity] + expected: FAIL + + [area.noHref: IDL set to -Infinity] + expected: FAIL + + [area.noHref: IDL set to "\\0"] + expected: FAIL + + [area.noHref: IDL set to object "test-toString"] + expected: FAIL + + [area.noHref: IDL set to object "test-valueOf"] + expected: FAIL diff --git a/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/messagechannel.any.js.ini b/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/messagechannel.any.js.ini index 563d7e04f6d..71a1c6a92be 100644 --- a/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/messagechannel.any.js.ini +++ b/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/messagechannel.any.js.ini @@ -49,24 +49,6 @@ [Object ImageData object, ImageData 1x1 non-transparent non-black] expected: FAIL - [ImageBitmap 1x1 transparent black] - expected: FAIL - - [ImageBitmap 1x1 non-transparent non-black] - expected: FAIL - - [Array ImageBitmap object, ImageBitmap 1x1 transparent black] - expected: FAIL - - [Array ImageBitmap object, ImageBitmap 1x1 transparent non-black] - expected: FAIL - - [Object ImageBitmap object, ImageBitmap 1x1 transparent black] - expected: FAIL - - [Object ImageBitmap object, ImageBitmap 1x1 transparent non-black] - expected: FAIL - [A subclass instance will deserialize as its closest serializable superclass] expected: FAIL diff --git a/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js.ini b/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js.ini index d79a86e4cfa..57c984434b8 100644 --- a/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js.ini +++ b/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js.ini @@ -5,15 +5,9 @@ [Serialize should throw before a detached MessagePort is found] expected: FAIL - [Serialize should make the ImageBitmap detached, so it cannot be transferred again] - expected: FAIL - [Serialize should throw before a detached ImageBitmap is found] expected: FAIL - [Cannot transfer ImageBitmap detached while the message was serialized] - expected: FAIL - [Serialize should make the OffscreenCanvas detached, so it cannot be transferred again] expected: FAIL diff --git a/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/window-postmessage.window.js.ini b/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/window-postmessage.window.js.ini index 0987b09c0aa..06b9002470b 100644 --- a/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/window-postmessage.window.js.ini +++ b/tests/wpt/meta/html/infrastructure/safe-passing-of-structured-data/window-postmessage.window.js.ini @@ -29,24 +29,6 @@ [Object ImageData object, ImageData 1x1 non-transparent non-black] expected: FAIL - [ImageBitmap 1x1 transparent black] - expected: FAIL - - [ImageBitmap 1x1 non-transparent non-black] - expected: FAIL - - [Array ImageBitmap object, ImageBitmap 1x1 transparent black] - expected: FAIL - - [Array ImageBitmap object, ImageBitmap 1x1 transparent non-black] - expected: FAIL - - [Object ImageBitmap object, ImageBitmap 1x1 transparent black] - expected: FAIL - - [Object ImageBitmap object, ImageBitmap 1x1 transparent non-black] - expected: FAIL - [A subclass instance will deserialize as its closest serializable superclass] expected: FAIL diff --git a/tests/wpt/meta/html/webappapis/structured-clone/structured-clone.any.js.ini b/tests/wpt/meta/html/webappapis/structured-clone/structured-clone.any.js.ini index 0b9d6c7223b..2bc19a50005 100644 --- a/tests/wpt/meta/html/webappapis/structured-clone/structured-clone.any.js.ini +++ b/tests/wpt/meta/html/webappapis/structured-clone/structured-clone.any.js.ini @@ -43,24 +43,6 @@ [Object ImageData object, ImageData 1x1 non-transparent non-black] expected: FAIL - [ImageBitmap 1x1 transparent black] - expected: FAIL - - [ImageBitmap 1x1 non-transparent non-black] - expected: FAIL - - [Array ImageBitmap object, ImageBitmap 1x1 transparent black] - expected: FAIL - - [Array ImageBitmap object, ImageBitmap 1x1 transparent non-black] - expected: FAIL - - [Object ImageBitmap object, ImageBitmap 1x1 transparent black] - expected: FAIL - - [Object ImageBitmap object, ImageBitmap 1x1 transparent non-black] - expected: FAIL - [A subclass instance will deserialize as its closest serializable superclass] expected: FAIL diff --git a/tests/wpt/meta/webmessaging/postMessage_cross_domain_image_transfer_2d.sub.htm.ini b/tests/wpt/meta/webmessaging/postMessage_cross_domain_image_transfer_2d.sub.htm.ini index cfa170f7f83..c392daab65c 100644 --- a/tests/wpt/meta/webmessaging/postMessage_cross_domain_image_transfer_2d.sub.htm.ini +++ b/tests/wpt/meta/webmessaging/postMessage_cross_domain_image_transfer_2d.sub.htm.ini @@ -1,9 +1,10 @@ [postMessage_cross_domain_image_transfer_2d.sub.htm] + expected: TIMEOUT [sending 2D canvas ImageBitmap to http://web-platform.test:8000] - expected: FAIL + expected: TIMEOUT [sending 2D canvas ImageBitmap to http://www1.web-platform.test:8000] - expected: FAIL + expected: NOTRUN [sending 2D canvas ImageBitmap to http://not-web-platform.test:8000] - expected: FAIL + expected: NOTRUN diff --git a/tests/wpt/meta/workers/semantics/structured-clone/dedicated.html.ini b/tests/wpt/meta/workers/semantics/structured-clone/dedicated.html.ini index eb509b54b7d..4e647012bd5 100644 --- a/tests/wpt/meta/workers/semantics/structured-clone/dedicated.html.ini +++ b/tests/wpt/meta/workers/semantics/structured-clone/dedicated.html.ini @@ -32,24 +32,6 @@ [Object with a getter that throws] expected: FAIL - [ImageBitmap 1x1 transparent black] - expected: FAIL - - [ImageBitmap 1x1 non-transparent non-black] - expected: FAIL - - [Array ImageBitmap object, ImageBitmap 1x1 transparent black] - expected: FAIL - - [Array ImageBitmap object, ImageBitmap 1x1 transparent non-black] - expected: FAIL - - [Object ImageBitmap object, ImageBitmap 1x1 transparent black] - expected: FAIL - - [Object ImageBitmap object, ImageBitmap 1x1 transparent non-black] - expected: FAIL - [A subclass instance will deserialize as its closest serializable superclass] expected: FAIL diff --git a/tests/wpt/mozilla/meta/mozilla/sslfail.html.ini b/tests/wpt/mozilla/meta/mozilla/sslfail.html.ini deleted file mode 100644 index 0c722d3efd7..00000000000 --- a/tests/wpt/mozilla/meta/mozilla/sslfail.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[sslfail.html] - type: reftest - disabled: https://github.com/servo/servo/issues/10760 diff --git a/tests/wpt/tests/css/CSS2/zindex/z-index-020.html b/tests/wpt/tests/css/CSS2/zindex/z-index-020.html new file mode 100644 index 00000000000..34a7272a254 --- /dev/null +++ b/tests/wpt/tests/css/CSS2/zindex/z-index-020.html @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<html class="reftest-wait"> +<title>CSS Test: z-index - dynamic changes</title> +<link rel="author" title="Oriol Brufau" href="obrufau@igalia.com"> +<link rel="help" href="http://www.w3.org/TR/CSS21/visuren.html#z-index" /> +<link rel="match" href="../../reference/ref-filled-green-200px-square.html"> +<meta name="assert" content="Checks that z-index can be changed dynamically."> +<style> +div { + width: 200px; + height: 200px; + position: absolute; +} +#red { + background: red; +} +#target { + background: green; + z-index: -1; +} +#target.front { + z-index: 1; +} +</style> + +<p>Test passes if there is a filled green square and <strong>no red</strong>.</p> + +<div id="red"></div> +<div id="target"></div> + +<script src="/common/reftest-wait.js"></script> +<script src="/common/rendering-utils.js"></script> +<script> +waitForAtLeastOneFrame().then(() => { + document.getElementById("target").className = "front"; + takeScreenshot(); +}); +</script> +</html> diff --git a/tests/wpt/webgl/meta/conformance/more/conformance/quickCheckAPI-S_V.html.ini b/tests/wpt/webgl/meta/conformance/more/conformance/quickCheckAPI-S_V.html.ini index 0f3b0f5348b..210035f6b69 100644 --- a/tests/wpt/webgl/meta/conformance/more/conformance/quickCheckAPI-S_V.html.ini +++ b/tests/wpt/webgl/meta/conformance/more/conformance/quickCheckAPI-S_V.html.ini @@ -1,2 +1,3 @@ [quickCheckAPI-S_V.html] - disabled: https://github.com/servo/servo/issues/10656 + [WebGL test #0] + expected: FAIL diff --git a/third_party/WebIDL/WebIDL.py b/third_party/WebIDL/WebIDL.py index 40e118e3781..bad5cbe54ca 100644 --- a/third_party/WebIDL/WebIDL.py +++ b/third_party/WebIDL/WebIDL.py @@ -2106,6 +2106,7 @@ class IDLInterface(IDLInterfaceOrNamespace): or identifier == "Serializable" or identifier == "Abstract" or identifier == "Inline" + or identifier == "Transferable" ): # Known extended attributes that do not take values if not attr.noArguments(): diff --git a/third_party/WebIDL/transferable.patch b/third_party/WebIDL/transferable.patch new file mode 100644 index 00000000000..9ea1ffa3427 --- /dev/null +++ b/third_party/WebIDL/transferable.patch @@ -0,0 +1,12 @@ +diff --git a/third_party/WebIDL/WebIDL.py b/third_party/WebIDL/WebIDL.py +index 40e118e3781..bad5cbe54ca 100644 +--- a/third_party/WebIDL/WebIDL.py ++++ b/third_party/WebIDL/WebIDL.py +@@ -2106,6 +2106,7 @@ class IDLInterface(IDLInterfaceOrNamespace): + or identifier == "Serializable" + or identifier == "Abstract" + or identifier == "Inline" ++ or identifier == "Transferable" + ): + # Known extended attributes that do not take values + if not attr.noArguments(): diff --git a/third_party/WebIDL/update.sh b/third_party/WebIDL/update.sh index 949644405d2..794331dc9bf 100755 --- a/third_party/WebIDL/update.sh +++ b/third_party/WebIDL/update.sh @@ -7,6 +7,7 @@ patch < inline.patch patch < like-as-iterable.patch patch < builtin-array.patch patch < array-type.patch +patch < transferable.patch wget https://hg.mozilla.org/mozilla-central/archive/tip.zip/dom/bindings/parser/tests/ -O tests.zip rm -r tests |