summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/conformance-checkers/html/elements/object
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/conformance-checkers/html/elements/object')
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data-isvalid.html91
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data-type-missing-novalid.html10
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data-whitespace-only-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-contains-hash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-double-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-double-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-userinfo-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-with-userinfo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-hostname-in-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-invalid-unicode-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-invalid-unicode-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-square-brackets-port-contains-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-u0000-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-u0000-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-bare-percent-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-contains-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-backslash-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-colon-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-colon-chars-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-percent-encoded-malformed-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-relative-square-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-u0091-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-999999-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-colon-bracket-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-dash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-multiple-letters-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-single-letter-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/query-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/query-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-data-contains-fragment-haswarn.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-data-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-single-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-slash-slash-abc-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-triple-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-ftp-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-ftp-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-square-bracket-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-https-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-https-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-password-bad-chars-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-password-contains-pile-of-poo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-username-contains-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-username-contains-pile-of-poo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/model-isvalid.html79
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/object/model-novalid.html81
71 files changed, 533 insertions, 0 deletions
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data-empty-novalid.html
new file mode 100644
index 0000000000..ffa455f9fe
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>empty data is not valid</title>
+<object data=""></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data-isvalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data-isvalid.html
new file mode 100644
index 0000000000..65e6516ab9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data-isvalid.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>valid data</title>
+<object data="a:foo.com"></object><!-- scheme-private -->
+<object data="foo:/"></object><!-- scheme-private-slash -->
+<object data="foo://"></object><!-- scheme-private-slash-slash -->
+<object data="foo:/bar.com/"></object><!-- scheme-private-path -->
+<object data="foo://///////"></object><!-- scheme-private-path-leading-slashes-only -->
+<object data="foo://///////bar.com/"></object><!-- scheme-private-path-leading-slashes-chars -->
+<object data="foo:////://///"></object><!-- scheme-private-path-leading-slashes-colon-slashes -->
+<object data="c:/foo"></object><!-- scheme-private-single-letter -->
+<object data="madeupscheme:/example.com/"></object><!-- scheme-private-single-slash -->
+<object data="file:/example.com/"></object><!-- scheme-file-single-slash -->
+<object data="ftps:/example.com/"></object><!-- scheme-ftps-single-slash -->
+<object data="gopher:/example.com/"></object><!-- scheme-gopher-single-slash -->
+<object data="ws:/example.com/"></object><!-- scheme-ws-single-slash -->
+<object data="wss:/example.com/"></object><!-- scheme-wss-single-slash -->
+<object data="javascript:/example.com/"></object><!-- scheme-javascript-single-slash -->
+<object data="mailto:/example.com/"></object><!-- scheme-mailto-single-slash -->
+<object data="madeupscheme:example.com/"></object><!-- scheme-private-no-slash -->
+<object data="ftps:example.com/"></object><!-- scheme-ftps-no-slash -->
+<object data="gopher:example.com/"></object><!-- scheme-gopher-no-slash -->
+<object data="wss:example.com/"></object><!-- scheme-wss-no-slash -->
+<object data="mailto:example.com/"></object><!-- scheme-mailto-no-slash -->
+<object data="data:text/plain,foo"></object><!-- scheme-data-no-slash -->
+<object data="http://user:pass@foo:21/bar;par?b#c"></object><!-- userinfo -->
+<object data="http://[2001::1]"></object><!-- host-ipv6 -->
+<object data="http://[2001::1]:80"></object><!-- host-ipv6-port -->
+<object data="http://f:/c"></object><!-- port-none-but-colon -->
+<object data="http://f:0/c"></object><!-- port-0 -->
+<object data="http://f:00000000000000/c"></object><!-- port-00000000000000 -->
+<object data="http://f:00000000000000000000080/c"></object><!-- port-00000000000000000000080 -->
+<object data="http://a:b@c:29/d"></object><!-- userinfo-host-port-path -->
+<object data="http://foo.com:b@d/"></object><!-- userinfo-username-non-alpha -->
+<object data="http://foo/abcd?efgh?ijkl"></object><!-- query-contains-question-mark -->
+<object data="http://foo/abcd#foo?bar"></object><!-- fragment-contains-question-mark -->
+<object data="http://example.com/foo/%2e"></object><!-- path-percent-encoded-dot -->
+<object data="http://example.com/%20foo"></object><!-- path-percent-encoded-space -->
+<object data="http://example.com/©zbar"></object><!-- path-non-ascii -->
+<object data="http://example.com/foo%41%7a"></object><!-- path-percent-encoded-multiple -->
+<object data="http://example.com/foo%91"></object><!-- path-percent-encoded-u0091 -->
+<object data="http://example.com/foo%00"></object><!-- path-percent-encoded-u0000 -->
+<object data="http://example.com/%3A%3a%3C%3c"></object><!-- path-percent-encoded-mixed-case -->
+<object data="http://example.com/你好你好"></object><!-- path-unicode-han -->
+<object data="http://example.com//foo"></object><!-- path-uFEFF -->
+<object data="http://example.com/‮/foo/‭/bar"></object><!-- path-u202E-u202D -->
+<object data="http://💩"></object><!-- host-is-pile-of-poo -->
+<object data="http💩//:foo"></object><!-- path-contains-pile-of-poo -->
+<object data="http://example.com/foo?💩"></object><!-- query-contains-pile-of-poo -->
+<object data="http://example.com/foo#💩"></object><!-- fragment-contains-pile-of-poo -->
+<object data="http://192.0x00A80001"></object><!-- host-192.0x00A80001 -->
+<object data="http://%25DOMAIN:foobar@foodomain.com"></object><!-- userinfo-username-contains-percent-encoded -->
+<object data="http://@www.example.com"></object><!-- userinfo-empty -->
+<object data="http://:b@www.example.com"></object><!-- userinfo-user-empty -->
+<object data="http://a:@www.example.com"></object><!-- userinfo-password-empty -->
+<object data="http://GOO​⁠goo.com"></object><!-- host-exotic-whitespace -->
+<object data="http://www.foo。bar.com"></object><!-- host-exotic-dot -->
+<object data="http://Go.com"></object><!-- host-fullwidth -->
+<object data="http://你好你好"></object><!-- host-idn-unicode-han -->
+<object data="http://192.168.0.257/"></object><!-- host-IP-address-broken -->
+<object data="//foo/bar"></object><!-- scheme-schemeless-relative -->
+<object data="/"></object><!-- path-slash-only-relative -->
+<object data="/a/b/c"></object><!-- path-simple-relative -->
+<object data="/a%2fc"></object><!-- path-percent-encoded-slash-relative -->
+<object data="/a/%2f/c"></object><!-- path-percent-encoded-slash-plus-slashes-relative -->
+<object data="?"></object><!-- query-empty-no-path-relative -->
+<object data="#"></object><!-- fragment-empty-hash-only-no-path-relative -->
+<object data="#/"></object><!-- fragment-slash-relative -->
+<object data="#;?"></object><!-- fragment-semicolon-question-mark-relative -->
+<object data="#β"></object><!-- fragment-non-ascii-relative -->
+<object data="foo.com"></object><!-- scheme-none-relative -->
+<object data=":"></object><!-- path-colon-relative -->
+<object data=":a"></object><!-- path-leading-colon-letter-relative -->
+<object data=":foo.com"></object><!-- path-leading-colon-chars-relative -->
+<object data=":/"></object><!-- path-leading-colon-slash-relative -->
+<object data=":#"></object><!-- path-leading-colon-hash-relative -->
+<object data=":23"></object><!-- path-leading-colon-number-relative -->
+<object data="/:23"></object><!-- path-slash-colon-number-relative -->
+<object data="::"></object><!-- path-leading-colon-colon-relative -->
+<object data="::23"></object><!-- path-colon-colon-number-relative -->
+<object data="💩http://foo"></object><!-- path-starts-with-pile-of-poo -->
+<object data="/💩"></object><!-- path-slash-pile-of-poo -->
+<object data="File://foo/bar.html"></object><!-- scheme-file-uppercase -->
+<object data="file://C|/foo/bar"></object><!-- scheme-file-slash-slash-c-bar -->
+<object data="file://server/foo/bar"></object><!-- scheme-file-host-included -->
+<object data="file:///foo/bar.txt"></object><!-- scheme-file-host-empty -->
+<object data="file:"></object><!-- scheme-file-scheme-only -->
+<object data="file:/"></object><!-- scheme-file-slash-only -->
+<object data="file://"></object><!-- scheme-file-slash-slash-only -->
+<object data="file:///"></object><!-- scheme-file-slash-slash-slash-only -->
+<object data="file:test"></object><!-- scheme-file-no-slash -->
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data-type-missing-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data-type-missing-novalid.html
new file mode 100644
index 0000000000..03f84f9044
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data-type-missing-novalid.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta charset=utf-8>
+<title>object element missing data and type attribute</title>
+</head>
+<body>
+<object></object>
+</body>
+</html>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data-whitespace-only-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data-whitespace-only-novalid.html
new file mode 100644
index 0000000000..26b77fd467
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data-whitespace-only-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>empty data is not valid</title>
+<object data="
+"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-backslash-novalid.html
new file mode 100644
index 0000000000..db712e2482
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: fragment-backslash</title>
+<object data="#\"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-contains-hash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-contains-hash-novalid.html
new file mode 100644
index 0000000000..91c1531977
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-contains-hash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: fragment-contains-hash</title>
+<object data="http://foo/path#f#g"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-leading-space-novalid.html
new file mode 100644
index 0000000000..bf09cca1ae
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/fragment-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: fragment-leading-space</title>
+<object data="http://f:21/b# e"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-cr-novalid.html
new file mode 100644
index 0000000000..0d834e8da0
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-cr</title>
+<object data="http://example. org"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-double-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-double-percent-encoded-novalid.html
new file mode 100644
index 0000000000..d9f6ead7a0
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-double-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-double-percent-encoded</title>
+<object data="http://%41.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-double-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-double-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 0000000000..7bcff83e1e
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-double-percent-encoded-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-double-percent-encoded-percent-encoded</title>
+<object data="http://%ef%bc%85%ef%bc%94%ef%bc%91.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-novalid.html
new file mode 100644
index 0000000000..2e2d6d84a7
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-empty</title>
+<object data="http://"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-userinfo-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-userinfo-empty-novalid.html
new file mode 100644
index 0000000000..db6dc05564
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-userinfo-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-empty-userinfo-empty</title>
+<object data="http://@/www.example.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-with-userinfo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-with-userinfo-novalid.html
new file mode 100644
index 0000000000..a468c3743c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-empty-with-userinfo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-empty-with-userinfo</title>
+<object data="http://user:pass@/"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-hostname-in-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-hostname-in-brackets-novalid.html
new file mode 100644
index 0000000000..64388a6a5c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-hostname-in-brackets-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-hostname-in-brackets</title>
+<object data="http://[www.google.com]/"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-invalid-unicode-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-invalid-unicode-novalid.html
new file mode 100644
index 0000000000..ee26451bfb
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-invalid-unicode-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-invalid-unicode</title>
+<object data="http://﷐zyx.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-invalid-unicode-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-invalid-unicode-percent-encoded-novalid.html
new file mode 100644
index 0000000000..600c40146c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-invalid-unicode-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-invalid-unicode-percent-encoded</title>
+<object data="http://%ef%b7%90zyx.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-newline-novalid.html
new file mode 100644
index 0000000000..9cda7a1cca
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-newline</title>
+<object data="http://example.
+org"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-space-novalid.html
new file mode 100644
index 0000000000..24ee0daf46
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-space</title>
+<object data="http://example .org"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-square-brackets-port-contains-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-square-brackets-port-contains-colon-novalid.html
new file mode 100644
index 0000000000..e65b6a35da
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-square-brackets-port-contains-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-square-brackets-port-contains-colon</title>
+<object data="http://[1::2]:3:4"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-tab-novalid.html
new file mode 100644
index 0000000000..06424d027a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-tab</title>
+<object data="http://example .org"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-u0000-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-u0000-percent-encoded-novalid.html
new file mode 100644
index 0000000000..0782bd2baf
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-u0000-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-u0000-percent-encoded</title>
+<object data="http://%00.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-u0000-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-u0000-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 0000000000..72bee10c22
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/host-u0000-percent-encoded-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: host-u0000-percent-encoded-percent-encoded</title>
+<object data="http://%ef%bc%85%ef%bc%90%ef%bc%90.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-bare-percent-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-bare-percent-sign-novalid.html
new file mode 100644
index 0000000000..7672e0075c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-bare-percent-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: path-bare-percent-sign</title>
+<object data="http://example.com/foo%"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-contains-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-contains-space-novalid.html
new file mode 100644
index 0000000000..306bd90cbd
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-contains-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: path-contains-space</title>
+<object data="/a/ /c"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-backslash-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-backslash-at-sign-novalid.html
new file mode 100644
index 0000000000..4d421d7e77
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-backslash-at-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: path-leading-backslash-at-sign</title>
+<object data="http://foo.com/\@"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-colon-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-colon-backslash-novalid.html
new file mode 100644
index 0000000000..bab2c3661a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-colon-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: path-leading-colon-backslash</title>
+<object data=":\"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-colon-chars-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-colon-chars-backslash-novalid.html
new file mode 100644
index 0000000000..d24fc52e6f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-colon-chars-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: path-leading-colon-chars-backslash</title>
+<object data=":foo.com\"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-space-novalid.html
new file mode 100644
index 0000000000..9093f5e26e
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: path-leading-space</title>
+<object data="http://f:21/ b"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-percent-encoded-malformed-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-percent-encoded-malformed-novalid.html
new file mode 100644
index 0000000000..d0a32ca506
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-percent-encoded-malformed-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: path-percent-encoded-malformed</title>
+<object data="http://example.com/foo/%2e%2"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-relative-square-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-relative-square-brackets-novalid.html
new file mode 100644
index 0000000000..d3c020df8a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-relative-square-brackets-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: path-relative-square-brackets</title>
+<object data="[61:24:74]:98"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-tab-novalid.html
new file mode 100644
index 0000000000..393ad621ba
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: path-tab</title>
+<object data="http://example.com/foo bar"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-trailing-space-novalid.html
new file mode 100644
index 0000000000..7637e81e43
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: path-trailing-space</title>
+<object data="http://f:21/b ?"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-u0091-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-u0091-novalid.html
new file mode 100644
index 0000000000..16b7b75044
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/path-u0091-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: path-u0091</title>
+<object data="http://example.com/foo‘"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-999999-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-999999-novalid.html
new file mode 100644
index 0000000000..7cc877269c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-999999-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: port-999999</title>
+<object data="http://f:999999/c"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-cr-novalid.html
new file mode 100644
index 0000000000..c66522f3da
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: port-cr</title>
+<object data="http://f: /c"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-colon-bracket-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-colon-bracket-colon-novalid.html
new file mode 100644
index 0000000000..23a94ce367
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-colon-bracket-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: port-leading-colon-bracket-colon</title>
+<object data="http://2001::1]:80"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-colon-novalid.html
new file mode 100644
index 0000000000..67d1d40f1b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: port-leading-colon</title>
+<object data="http://2001::1"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-dash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-dash-novalid.html
new file mode 100644
index 0000000000..ace5c2109e
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-leading-dash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: port-leading-dash</title>
+<object data="http://foo:-80/"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-multiple-letters-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-multiple-letters-novalid.html
new file mode 100644
index 0000000000..72aabe72dc
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-multiple-letters-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: port-multiple-letters</title>
+<object data="http://f:fifty-two/c"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-newline-novalid.html
new file mode 100644
index 0000000000..f9cec6d9b3
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: port-newline</title>
+<object data="http://f:
+/c"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-single-letter-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-single-letter-novalid.html
new file mode 100644
index 0000000000..1c349f119b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-single-letter-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: port-single-letter</title>
+<object data="http://f:b/c"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-space-novalid.html
new file mode 100644
index 0000000000..0efa3a6466
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: port-space</title>
+<object data="http://f: /c"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-tab-novalid.html
new file mode 100644
index 0000000000..d472787a90
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/port-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: port-tab</title>
+<object data="http://f: /c"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/query-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/query-leading-space-novalid.html
new file mode 100644
index 0000000000..a079135891
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/query-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: query-leading-space</title>
+<object data="http://f:21/b? d"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/query-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/query-trailing-space-novalid.html
new file mode 100644
index 0000000000..6a8cc4bc63
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/query-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: query-trailing-space</title>
+<object data="http://f:21/b?d #"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-data-contains-fragment-haswarn.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-data-contains-fragment-haswarn.html
new file mode 100644
index 0000000000..7075d88a07
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-data-contains-fragment-haswarn.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>data:text/html,test#test warning: scheme-data-contains-fragment</title>
+<object data="data:text/html,test#test"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-data-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-data-single-slash-novalid.html
new file mode 100644
index 0000000000..97d1d04183
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-data-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-data-single-slash</title>
+<object data="data:/example.com/"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-backslash-novalid.html
new file mode 100644
index 0000000000..829632449f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-file-backslash</title>
+<object data="file:c:\foo\bar.html"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-single-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-single-slash-c-bar-novalid.html
new file mode 100644
index 0000000000..a5d0c782b2
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-single-slash-c-bar-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-file-single-slash-c-bar</title>
+<object data="file:/C|/foo/bar"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-slash-slash-abc-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-slash-slash-abc-bar-novalid.html
new file mode 100644
index 0000000000..0cf7b3792f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-slash-slash-abc-bar-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-file-slash-slash-abc-bar</title>
+<object data="file://abc|/foo/bar"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-triple-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-triple-slash-c-bar-novalid.html
new file mode 100644
index 0000000000..4109b8c848
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-file-triple-slash-c-bar-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-file-triple-slash-c-bar</title>
+<object data="file:///C|/foo/bar"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-ftp-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-ftp-no-slash-novalid.html
new file mode 100644
index 0000000000..a828a9fb66
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-ftp-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-ftp-no-slash</title>
+<object data="ftp:example.com/"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-ftp-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-ftp-single-slash-novalid.html
new file mode 100644
index 0000000000..0f4a5d3115
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-ftp-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-ftp-single-slash</title>
+<object data="ftp:/example.com/"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-backslash-novalid.html
new file mode 100644
index 0000000000..4286ae797f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-http-backslash</title>
+<object data="http:\\foo.com\"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-colon-novalid.html
new file mode 100644
index 0000000000..522f34cb9d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-http-no-slash-colon</title>
+<object data="http::@c:29"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-novalid.html
new file mode 100644
index 0000000000..8ae3cc5e45
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-http-no-slash</title>
+<object data="http:foo.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-square-bracket-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-square-bracket-novalid.html
new file mode 100644
index 0000000000..af87406c3c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-no-slash-square-bracket-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-http-no-slash-square-bracket</title>
+<object data="http:[61:27]/:foo"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-single-slash-novalid.html
new file mode 100644
index 0000000000..3923512854
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-http-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-http-single-slash</title>
+<object data="http:/example.com/"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-https-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-https-no-slash-novalid.html
new file mode 100644
index 0000000000..79ca00c60b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-https-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-https-no-slash</title>
+<object data="https:example.com/"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-https-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-https-single-slash-novalid.html
new file mode 100644
index 0000000000..17f0317420
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-https-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-https-single-slash</title>
+<object data="https:/example.com/"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-cr-novalid.html
new file mode 100644
index 0000000000..4c9c1226c8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-trailing-cr</title>
+<object data="a: foo.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-newline-novalid.html
new file mode 100644
index 0000000000..7a46f0ccc9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-trailing-newline</title>
+<object data="a:
+foo.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-space-novalid.html
new file mode 100644
index 0000000000..756cbb9c76
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-trailing-space</title>
+<object data="a: foo.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-tab-novalid.html
new file mode 100644
index 0000000000..f85ac5dcda
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/scheme-trailing-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: scheme-trailing-tab</title>
+<object data="a: foo.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-backslash-novalid.html
new file mode 100644
index 0000000000..c196363507
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: userinfo-backslash</title>
+<object data="http://a\b:c\d@foo.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-password-bad-chars-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-password-bad-chars-novalid.html
new file mode 100644
index 0000000000..c1b3669e38
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-password-bad-chars-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: userinfo-password-bad-chars</title>
+<object data="http://&a:foo(b]c@d:2/"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-password-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-password-contains-pile-of-poo-novalid.html
new file mode 100644
index 0000000000..b6f542d72d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-password-contains-pile-of-poo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: userinfo-password-contains-pile-of-poo</title>
+<object data="http://foo:💩@example.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-username-contains-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-username-contains-at-sign-novalid.html
new file mode 100644
index 0000000000..15763d0e07
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-username-contains-at-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: userinfo-username-contains-at-sign</title>
+<object data="http://::@c@d:2"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-username-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-username-contains-pile-of-poo-novalid.html
new file mode 100644
index 0000000000..9cb6d9cc28
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/data/userinfo-username-contains-pile-of-poo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid data: userinfo-username-contains-pile-of-poo</title>
+<object data="http://💩:foo@example.com"></object>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/model-isvalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/model-isvalid.html
new file mode 100644
index 0000000000..820915ed3a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/model-isvalid.html
@@ -0,0 +1,79 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <meta charset=utf-8>
+ <title>&lt;object&gt;</title>
+</head>
+<body>
+ <map name="idref"></map>
+ <!-- is structured inline -->
+ <p><object
+ data="uri"
+ height="40"
+ usemap="#idref"
+ width="40"
+ class="class"
+ lang="en"></object></p>
+
+ <!-- is strictly inline -->
+ <p><dfn><object
+ data="uri"
+ height="40"
+ usemap="#idref"
+ width="40"
+ class="class"
+ lang="en"></object></dfn></p>
+
+
+ <!-- can contain strictly inline while in strictly inline context, but param must come first -->
+ <p><dfn>strictly inline
+ <object data='f'>
+ <em>text</em>
+ </object>
+ </dfn></p>
+ <p><dfn>strictly inline
+ <object data='f'>
+ <param name="foo" value='bar'><param name="bar" value='foo'>
+ <em>text</em>
+ </object>
+ </dfn></p>
+
+ <!-- can contain blocks while in block context, but param must come first -->
+<!-- REVISIT
+ <object>
+ <p>text</p>
+ </object>
+ <object>
+ <param name="foo" value='bar'><param name="bar" value='foo'>
+ <p>text</p>
+ </object>
+-->
+ <!-- can contain interactive if ancestor does not forbid it, but param must come first -->
+ <p>paragraph
+ <object data='f'>
+ <a>link</a>
+ </object>
+ </p>
+ <p>paragraph
+ <object data='f'>
+ <param name="foo" value='bar'><param name="bar" value='foo'>
+ <a>link</a>
+ </object>
+ </p>
+ <p><dfn>strictly inline
+ <object data='f'>
+ <a>link</a>
+ </object>
+ </dfn></p>
+ <p><dfn>strictly inline
+ <object data='f'>
+ <param name="foo" value='bar'><param name="bar" value='foo'>
+ <a>link</a>
+ </object>
+ </dfn></p>
+
+ <!-- object with flow content and flow parent -->
+ <div><object data=foo><p>foo</p></object></div>
+
+</body>
+</html>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/object/model-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/object/model-novalid.html
new file mode 100644
index 0000000000..f5037efa81
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/object/model-novalid.html
@@ -0,0 +1,81 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <meta charset=utf-8>
+ <title>&lt;obj&gt;</title>
+</head>
+<body>
+ <!-- classid, codebase, data, usemap are uris; archive is uri list
+ width and height are positive integers
+ type and codetype are MIME types -->
+ <p><object archive="&lt;"></object></p>
+ <p><object classid="&lt;"></object></p>
+ <p><object codebase="&lt;"></object></p>
+ <p><object codetype="//"></object></p>
+ <p><object data="&lt;"></object></p>
+ <p><object height="4.2"></object></p>
+ <p><object type="//"></object></p>
+ <p><object usemap="&lt;"></object></p>
+ <p><object width="0"></object></p>
+
+ <!-- cannot contain blocks while in inline context -->
+ <p>paragraph
+ <object>
+ <p>para</p>
+ </object>
+ </p>
+
+ <!-- cannot contain blocks while in strictly inline context -->
+ <p><dfn>strictly inline
+ <object>
+ <p>para</p>
+ </object>
+ </dfn></p>
+
+ <!-- cannot contain structured inline while in strictly inline context -->
+ <p><dfn>strictly inline
+ <object>
+ <ul><li>para</li></ul>
+ </object>
+ </dfn></p>
+
+ <!-- cannot contain inline while in block context -->
+ <object>
+ <em>inline</em> text
+ </object>
+
+ <!-- param must be first -->
+ <p>paragraph
+ <object>
+ <em>text</em>
+ <param name="foo">
+ </object>
+ </p>
+ <p><dfn>strictly inline
+ <object>
+ text
+ <param name="foo">
+ </object>
+ </dfn></p>
+ <object>
+ <p>para</p>
+ <param name="foo">
+ </object>
+
+ <!-- cannot contain interactive if ancestor forbids it -->
+ <p><a>paragraph
+ <object>
+ <a>para</a>
+ </object>
+ </a></p>
+ <p><dfn><a>strictly inline
+ <object>
+ <a>para</a>
+ </object>
+ </a></dfn></p>
+
+ <!-- object with flow content and phrasing parent -->
+ <span><object data=foo><p>foo</p></object></span>
+
+</body>
+</html>