Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
Cargo.lock | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
index bf2c9c74e51..17c5eceb86b 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -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"
From f1c46aae6edcf6223d08c63439993e66ed2c4fd5 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Fri, 23 May 2025 17:37:21 +0000
Subject: [PATCH 2/4] build(deps): bump cc from 1.2.23 to 1.2.24 (#37108)
Bumps [cc](https://github.com/rust-lang/cc-rs) from 1.2.23 to 1.2.24.
Release notes
Sourced from cc's
releases.
cc-v1.2.24
Other
- Regenerate windows sys bindings (#1471)
Changelog
Sourced from cc's
changelog.
1.2.24
- 2025-05-23
Other
- Regenerate windows sys bindings (#1471)
Commits
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
Cargo.lock | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
index 17c5eceb86b..3c735cf124c 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]]
@@ -7526,7 +7526,7 @@ dependencies = [
"getrandom",
"once_cell",
"rustix",
- "windows-sys 0.52.0",
+ "windows-sys 0.59.0",
]
[[package]]
@@ -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]]
From cd36c35cf2891076e396155d3e6698fe385cf510 Mon Sep 17 00:00:00 2001
From: Martin Robinson
Date: Fri, 23 May 2025 20:33:56 +0200
Subject: [PATCH 3/4] Enable all remaining disabled intermittent tests (#37094)
These were disabled long ago, but nowadays the intermittent filter can
ignore them when they flake. In addition, running them will allow us to
know if they are still intermittent or not since all intermittent
failures are tracked in GitHub via mentions on issues.
Testing: This is a change to test configuration.
Signed-off-by: Martin Robinson
---
.../the-history-interface/001.html.ini | 6 -
.../html/dom/reflection-embedded.html.ini | 8803 ++++++++++++++++-
.../wpt/mozilla/meta/mozilla/sslfail.html.ini | 3 -
.../conformance/quickCheckAPI-S_V.html.ini | 3 +-
4 files changed, 8803 insertions(+), 12 deletions(-)
delete mode 100644 tests/wpt/meta/html/browsers/history/the-history-interface/001.html.ini
delete mode 100644 tests/wpt/mozilla/meta/mozilla/sslfail.html.ini
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/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/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/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
From 1f5087d7734e464ef2cdf7db25c143a5e5720b6a Mon Sep 17 00:00:00 2001
From: Andrei Volykhin
Date: Fri, 23 May 2025 23:40:25 +0300
Subject: [PATCH 4/4] imagebitmap: Make ImageBitmap serializable and
transferable (#37101)
According to specification ImageBitmap objects are serializable objects
and transferable objects.
https://html.spec.whatwg.org/multipage/#the-imagebitmap-interface:imagebitmap-11
Testing:
- html/canvas/element/manual/imagebitmap/*
- html/infrastructure/safe-passing-of-structured-data/*
- html/webappapis/structured-clone/*
- workers/semantics/structured-clone/*
Signed-off-by: Andrei Volykhin
---
.../script/dom/bindings/structuredclone.rs | 27 +++-
components/script/dom/imagebitmap.rs | 128 +++++++++++++++++-
.../webidls/ImageBitmap.webidl | 3 +-
components/shared/base/id.rs | 2 +
.../constellation/structured_data/mod.rs | 7 +-
.../structured_data/serializable.rs | 35 ++++-
.../structured_data/transferable.rs | 2 +
.../createImageBitmap-serializable.html.ini | 6 -
.../createImageBitmap-transfer.html.ini | 6 -
.../filter/offscreencanvas.filter.w.html.ini | 3 +-
.../messagechannel.any.js.ini | 18 ---
.../transfer-errors.window.js.ini | 6 -
.../window-postmessage.window.js.ini | 18 ---
.../structured-clone.any.js.ini | 18 ---
...cross_domain_image_transfer_2d.sub.htm.ini | 7 +-
.../structured-clone/dedicated.html.ini | 18 ---
third_party/WebIDL/WebIDL.py | 1 +
third_party/WebIDL/transferable.patch | 12 ++
third_party/WebIDL/update.sh | 1 +
19 files changed, 215 insertions(+), 103 deletions(-)
create mode 100644 third_party/WebIDL/transferable.patch
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 for StructuredCloneTags {
SerializableInterface::DomPointReadOnly => StructuredCloneTags::DomPointReadOnly,
SerializableInterface::DomPoint => StructuredCloneTags::DomPoint,
SerializableInterface::DomException => StructuredCloneTags::DomException,
+ SerializableInterface::ImageBitmap => StructuredCloneTags::ImageBitmap,
}
}
}
@@ -83,6 +88,7 @@ impl From for StructuredCloneTags {
impl From 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::,
SerializableInterface::DomPoint => read_object::,
SerializableInterface::DomException => read_object::,
+ SerializableInterface::ImageBitmap => read_object::,
}
}
@@ -237,6 +244,7 @@ fn serialize_for_type(val: SerializableInterface) -> SerializeOperation {
SerializableInterface::DomPointReadOnly => try_serialize::,
SerializableInterface::DomPoint => try_serialize::,
SerializableInterface::DomException => try_serialize::,
+ SerializableInterface::ImageBitmap => try_serialize::,
}
}
@@ -264,6 +272,7 @@ fn receiver_for_type(
) -> fn(&GlobalScope, &mut StructuredDataReader<'_>, u64, RawMutableHandleObject) -> Result<(), ()>
{
match val {
+ TransferrableInterface::ImageBitmap => receive_object::,
TransferrableInterface::MessagePort => receive_object::,
TransferrableInterface::ReadableStream => receive_object::,
TransferrableInterface::WritableStream => receive_object::,
@@ -390,6 +399,7 @@ type TransferOperation = unsafe fn(
fn transfer_for_type(val: TransferrableInterface) -> TransferOperation {
match val {
+ TransferrableInterface::ImageBitmap => try_transfer::,
TransferrableInterface::MessagePort => try_transfer::,
TransferrableInterface::ReadableStream => try_transfer::,
TransferrableInterface::WritableStream => try_transfer::,
@@ -439,6 +449,7 @@ unsafe fn can_transfer_for_type(
root_from_object::(*obj, cx).map(|o| Transferable::can_transfer(&*o))
}
match transferable {
+ TransferrableInterface::ImageBitmap => can_transfer::(obj, cx),
TransferrableInterface::MessagePort => can_transfer::(obj, cx),
TransferrableInterface::ReadableStream => can_transfer::(obj, cx),
TransferrableInterface::WritableStream => can_transfer::(obj, cx),
@@ -527,6 +538,10 @@ pub(crate) struct StructuredDataReader<'a> {
pub(crate) points: Option>,
/// A map of serialized exceptions.
pub(crate) exceptions: Option>,
+ // A map of serialized image bitmaps.
+ pub(crate) image_bitmaps: Option>,
+ /// A map of transferred image bitmaps.
+ pub(crate) transferred_image_bitmaps: Option>,
}
/// A data holder for transferred and serialized objects.
@@ -545,6 +560,10 @@ pub(crate) struct StructuredDataWriter {
pub(crate) exceptions: Option>,
/// Serialized blobs.
pub(crate) blobs: Option>,
+ /// Serialized image bitmaps.
+ pub(crate) image_bitmaps: Option>,
+ /// Transferred image bitmaps.
+ pub(crate) transferred_image_bitmaps: Option>,
}
/// 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/imagebitmap.rs b/components/script/dom/imagebitmap.rs
index ef6538e7451..b7073d1b49c 100644
--- a/components/script/dom/imagebitmap.rs
+++ b/components/script/dom/imagebitmap.rs
@@ -3,8 +3,11 @@
* 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;
@@ -12,6 +15,9 @@ use crate::dom::bindings::codegen::Bindings::ImageBitmapBinding::ImageBitmapMeth
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,11 +35,11 @@ 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),
}
@@ -56,6 +62,10 @@ impl ImageBitmap {
*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 +77,118 @@ impl ImageBitmap {
}
}
+impl Serializable for ImageBitmap {
+ type Index = ImageBitmapIndex;
+ type Data = SerializableImageBitmap;
+
+ ///
+ 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))
+ }
+
+ ///
+ fn deserialize(
+ owner: &GlobalScope,
+ serialized: Self::Data,
+ can_gc: CanGc,
+ ) -> Result, ()> {
+ let image_bitmap =
+ ImageBitmap::new(owner, serialized.width, serialized.height, can_gc).unwrap();
+
+ // 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> {
+ 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
+ }
+
+ ///
+ 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))
+ }
+
+ ///
+ fn transfer_receive(
+ owner: &GlobalScope,
+ _: ImageBitmapId,
+ serialized: SerializableImageBitmap,
+ ) -> Result, ()> {
+ let image_bitmap =
+ ImageBitmap::new(owner, serialized.width, serialized.height, CanGc::note()).unwrap();
+
+ // 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> {
+ match data {
+ StructuredData::Reader(r) => &mut r.transferred_image_bitmaps,
+ StructuredData::Writer(w) => &mut w.transferred_image_bitmaps,
+ }
+ }
+}
+
impl ImageBitmapMethods for ImageBitmap {
///
fn Height(&self) -> u32 {
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/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>,
/// Transform streams transferred objects.
pub transform_streams: Option>,
+ /// Serialized image bitmap objects.
+ pub image_bitmaps: Option>,
+ /// Transferred image bitmap objects.
+ pub transferred_image_bitmaps: Option>,
}
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::
},
+ Serializable::ImageBitmap => {
+ StructuredSerializedData::clone_all_of_type::
+ },
}
}
}
@@ -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,
+}
+
+impl BroadcastClone for SerializableImageBitmap {
+ type Id = ImageBitmapId;
+
+ fn source(
+ data: &StructuredSerializedData,
+ ) -> &Option> {
+ &data.image_bitmaps
+ }
+
+ fn destination(
+ data: &mut StructuredSerializedData,
+ ) -> &mut Option> {
+ &mut data.image_bitmaps
+ }
+
+ fn clone_for_broadcast(&self) -> Option {
+ 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/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/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/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