summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/conformance-checkers/html/elements/source
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/conformance-checkers/html/elements/source')
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src-isvalid.html91
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src-whitespace-only-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-contains-hash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-double-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-double-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-userinfo-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-with-userinfo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-hostname-in-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-invalid-unicode-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-invalid-unicode-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-square-brackets-port-contains-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-u0000-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-u0000-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-bare-percent-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-contains-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-backslash-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-colon-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-colon-chars-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-percent-encoded-malformed-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-relative-square-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-u0091-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-999999-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-colon-bracket-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-dash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-multiple-letters-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-single-letter-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/query-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/query-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-data-contains-fragment-haswarn.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-data-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-single-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-triple-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-ftp-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-ftp-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-square-bracket-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-https-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-https-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-javascript-no-slash-malformed-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-password-bad-chars-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-password-contains-pile-of-poo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-username-contains-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-username-contains-pile-of-poo-novalid.html4
68 files changed, 363 insertions, 0 deletions
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src-empty-novalid.html
new file mode 100644
index 000000000..40af9974f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>empty src is not valid</title>
+<video><source src=""></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src-isvalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src-isvalid.html
new file mode 100644
index 000000000..138463d95
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src-isvalid.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>valid src</title>
+<video><source src="file:///"></video><!-- scheme-file-slash-slash-slash-only -->
+<video><source src="http://a:@www.example.com"></video><!-- userinfo-password-empty -->
+<video><source src="foo://///////"></video><!-- scheme-private-path-leading-slashes-only -->
+<video><source src="file://abc|/foo/bar"></video><!-- scheme-file-slash-slash-abc-bar -->
+<video><source src="/a/b/c"></video><!-- path-simple-relative -->
+<video><source src="http://example.com/你好你好"></video><!-- path-unicode-han -->
+<video><source src="/a/%2f/c"></video><!-- path-percent-encoded-slash-plus-slashes-relative -->
+<video><source src="http://f:/c"></video><!-- port-none-but-colon -->
+<video><source src="http://example.com/foo%41%7a"></video><!-- path-percent-encoded-multiple -->
+<video><source src="http://192.168.0.257/"></video><!-- host-IP-address-broken -->
+<video><source src="madeupscheme:example.com/"></video><!-- scheme-private-no-slash -->
+<video><source src="?"></video><!-- query-empty-no-path-relative -->
+<video><source src="http://example.com/%20foo"></video><!-- path-percent-encoded-space -->
+<video><source src="mailto:/example.com/"></video><!-- scheme-mailto-single-slash -->
+<video><source src="::"></video><!-- path-leading-colon-colon-relative -->
+<video><source src="http://example.com/%3A%3a%3C%3c"></video><!-- path-percent-encoded-mixed-case -->
+<video><source src="http://user:pass@foo:21/bar;par?b#c"></video><!-- userinfo -->
+<video><source src="ws:/example.com/"></video><!-- scheme-ws-single-slash -->
+<video><source src="foo://"></video><!-- scheme-private-slash-slash -->
+<video><source src="#"></video><!-- fragment-empty-hash-only-no-path-relative -->
+<video><source src="http://f:00000000000000/c"></video><!-- port-00000000000000 -->
+<video><source src="foo:////://///"></video><!-- scheme-private-path-leading-slashes-colon-slashes -->
+<video><source src=":23"></video><!-- path-leading-colon-number-relative -->
+<video><source src="foo:/"></video><!-- scheme-private-slash -->
+<video><source src="http://💩"></video><!-- host-is-pile-of-poo -->
+<video><source src="file:test"></video><!-- scheme-file-no-slash -->
+<video><source src="file://C|/foo/bar"></video><!-- scheme-file-slash-slash-c-bar -->
+<video><source src="#/"></video><!-- fragment-slash-relative -->
+<video><source src="http://192.0x00A80001"></video><!-- host-192.0x00A80001 -->
+<video><source src="foo.com"></video><!-- scheme-none-relative -->
+<video><source src="http💩//:foo"></video><!-- path-contains-pile-of-poo -->
+<video><source src="File://foo/bar.html"></video><!-- scheme-file-uppercase -->
+<video><source src=":/"></video><!-- path-leading-colon-slash-relative -->
+<video><source src="http://www.foo。bar.com"></video><!-- host-exotic-dot -->
+<video><source src="http://GOO​⁠goo.com"></video><!-- host-exotic-whitespace -->
+<video><source src="file:///foo/bar.txt"></video><!-- scheme-file-host-empty -->
+<video><source src="javascript:/example.com/"></video><!-- scheme-javascript-single-slash -->
+<video><source src="gopher:/example.com/"></video><!-- scheme-gopher-single-slash -->
+<video><source src="ftps:example.com/"></video><!-- scheme-ftps-no-slash -->
+<video><source src="file://server/foo/bar"></video><!-- scheme-file-host-included -->
+<video><source src="http://example.com/foo%00"></video><!-- path-percent-encoded-u0000 -->
+<video><source src="a:foo.com"></video><!-- scheme-private -->
+<video><source src=":"></video><!-- path-colon-relative -->
+<video><source src="http://:b@www.example.com"></video><!-- userinfo-user-empty -->
+<video><source src="file:/"></video><!-- scheme-file-slash-only -->
+<video><source src="wss:example.com/"></video><!-- scheme-wss-no-slash -->
+<video><source src="::23"></video><!-- path-colon-colon-number-relative -->
+<video><source src="/a%2fc"></video><!-- path-percent-encoded-slash-relative -->
+<video><source src="http://a:b@c:29/d"></video><!-- userinfo-host-port-path -->
+<video><source src="gopher:example.com/"></video><!-- scheme-gopher-no-slash -->
+<video><source src="madeupscheme:/example.com/"></video><!-- scheme-private-single-slash -->
+<video><source src="mailto:example.com/"></video><!-- scheme-mailto-no-slash -->
+<video><source src="http://%25DOMAIN:foobar@foodomain.com"></video><!-- userinfo-username-contains-percent-encoded -->
+<video><source src="/:23"></video><!-- path-slash-colon-number-relative -->
+<video><source src="foo://///////bar.com/"></video><!-- scheme-private-path-leading-slashes-chars -->
+<video><source src="http://[2001::1]:80"></video><!-- host-ipv6-port -->
+<video><source src="data:text/plain,foo"></video><!-- scheme-data-no-slash -->
+<video><source src="http://example.com/foo/%2e"></video><!-- path-percent-encoded-dot -->
+<video><source src="file:/example.com/"></video><!-- scheme-file-single-slash -->
+<video><source src="http://example.com/©zbar"></video><!-- path-non-ascii -->
+<video><source src="http://example.com//foo"></video><!-- path-uFEFF -->
+<video><source src="wss:/example.com/"></video><!-- scheme-wss-single-slash -->
+<video><source src="http://foo/abcd#foo?bar"></video><!-- fragment-contains-question-mark -->
+<video><source src=":#"></video><!-- path-leading-colon-hash-relative -->
+<video><source src="http://example.com/foo%91"></video><!-- path-percent-encoded-u0091 -->
+<video><source src="c:/foo"></video><!-- scheme-private-single-letter -->
+<video><source src=":foo.com"></video><!-- path-leading-colon-chars-relative -->
+<video><source src="http://你好你好"></video><!-- host-idn-unicode-han -->
+<video><source src="http://example.com/foo#💩"></video><!-- fragment-contains-pile-of-poo -->
+<video><source src="file:"></video><!-- scheme-file-scheme-only -->
+<video><source src="#β"></video><!-- fragment-non-ascii-relative -->
+<video><source src="foo:/bar.com/"></video><!-- scheme-private-path -->
+<video><source src="http://f:0/c"></video><!-- port-0 -->
+<video><source src="#;?"></video><!-- fragment-semicolon-question-mark-relative -->
+<video><source src="http://Go.com"></video><!-- host-fullwidth -->
+<video><source src="http://@www.example.com"></video><!-- userinfo-empty -->
+<video><source src="http://example.com/‮/foo/‭/bar"></video><!-- path-u202E-u202D -->
+<video><source src="http://[2001::1]"></video><!-- host-ipv6 -->
+<video><source src="💩http://foo"></video><!-- path-starts-with-pile-of-poo -->
+<video><source src="http://foo/abcd?efgh?ijkl"></video><!-- query-contains-question-mark -->
+<video><source src="//foo/bar"></video><!-- scheme-schemeless-relative -->
+<video><source src="ftps:/example.com/"></video><!-- scheme-ftps-single-slash -->
+<video><source src="http://foo.com:b@d/"></video><!-- userinfo-username-non-alpha -->
+<video><source src=":a"></video><!-- path-leading-colon-letter-relative -->
+<video><source src="/"></video><!-- path-slash-only-relative -->
+<video><source src="http://example.com/foo?💩"></video><!-- query-contains-pile-of-poo -->
+<video><source src="http://f:00000000000000000000080/c"></video><!-- port-00000000000000000000080 -->
+<video><source src="file://"></video><!-- scheme-file-slash-slash-only -->
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src-whitespace-only-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src-whitespace-only-novalid.html
new file mode 100644
index 000000000..d814f5bee
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src-whitespace-only-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>empty src is not valid</title>
+<video><source src="
+"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-backslash-novalid.html
new file mode 100644
index 000000000..d01d315a8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: fragment-backslash</title>
+<video><source src="#\"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-contains-hash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-contains-hash-novalid.html
new file mode 100644
index 000000000..1780fe698
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-contains-hash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: fragment-contains-hash</title>
+<video><source src="http://foo/path#f#g"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-leading-space-novalid.html
new file mode 100644
index 000000000..cf2d6028b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/fragment-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: fragment-leading-space</title>
+<video><source src="http://f:21/b# e"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-cr-novalid.html
new file mode 100644
index 000000000..fce5132b1
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-cr</title>
+<video><source src="http://example. org"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-double-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-double-percent-encoded-novalid.html
new file mode 100644
index 000000000..e670a118f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-double-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-double-percent-encoded</title>
+<video><source src="http://%41.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-double-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-double-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 000000000..e45923332
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-double-percent-encoded-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-double-percent-encoded-percent-encoded</title>
+<video><source src="http://%ef%bc%85%ef%bc%94%ef%bc%91.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-novalid.html
new file mode 100644
index 000000000..0c8af3c14
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-empty</title>
+<video><source src="http://"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-userinfo-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-userinfo-empty-novalid.html
new file mode 100644
index 000000000..401b95d78
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-userinfo-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-empty-userinfo-empty</title>
+<video><source src="http://@/www.example.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-with-userinfo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-with-userinfo-novalid.html
new file mode 100644
index 000000000..20aee85b0
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-empty-with-userinfo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-empty-with-userinfo</title>
+<video><source src="http://user:pass@/"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-hostname-in-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-hostname-in-brackets-novalid.html
new file mode 100644
index 000000000..459a77a7c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-hostname-in-brackets-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-hostname-in-brackets</title>
+<video><source src="http://[www.google.com]/"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-invalid-unicode-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-invalid-unicode-novalid.html
new file mode 100644
index 000000000..87343ea53
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-invalid-unicode-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-invalid-unicode</title>
+<video><source src="http://﷐zyx.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-invalid-unicode-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-invalid-unicode-percent-encoded-novalid.html
new file mode 100644
index 000000000..89198c0c0
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-invalid-unicode-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-invalid-unicode-percent-encoded</title>
+<video><source src="http://%ef%b7%90zyx.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-newline-novalid.html
new file mode 100644
index 000000000..d6fbbff9f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-newline</title>
+<video><source src="http://example.
+org"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-space-novalid.html
new file mode 100644
index 000000000..4b948bb42
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-space</title>
+<video><source src="http://example .org"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-square-brackets-port-contains-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-square-brackets-port-contains-colon-novalid.html
new file mode 100644
index 000000000..1c0948bde
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-square-brackets-port-contains-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-square-brackets-port-contains-colon</title>
+<video><source src="http://[1::2]:3:4"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-tab-novalid.html
new file mode 100644
index 000000000..bfa213cf9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-tab</title>
+<video><source src="http://example .org"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-u0000-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-u0000-percent-encoded-novalid.html
new file mode 100644
index 000000000..af4112397
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-u0000-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-u0000-percent-encoded</title>
+<video><source src="http://%00.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-u0000-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-u0000-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 000000000..2b8764b77
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/host-u0000-percent-encoded-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-u0000-percent-encoded-percent-encoded</title>
+<video><source src="http://%ef%bc%85%ef%bc%90%ef%bc%90.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-bare-percent-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-bare-percent-sign-novalid.html
new file mode 100644
index 000000000..a3f169c0b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-bare-percent-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-bare-percent-sign</title>
+<video><source src="http://example.com/foo%"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-contains-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-contains-space-novalid.html
new file mode 100644
index 000000000..8290e2355
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-contains-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-contains-space</title>
+<video><source src="/a/ /c"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-backslash-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-backslash-at-sign-novalid.html
new file mode 100644
index 000000000..6a7028d12
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-backslash-at-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-leading-backslash-at-sign</title>
+<video><source src="http://foo.com/\@"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-colon-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-colon-backslash-novalid.html
new file mode 100644
index 000000000..8c42b1c88
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-colon-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-leading-colon-backslash</title>
+<video><source src=":\"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-colon-chars-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-colon-chars-backslash-novalid.html
new file mode 100644
index 000000000..3764f1e87
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-colon-chars-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-leading-colon-chars-backslash</title>
+<video><source src=":foo.com\"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-space-novalid.html
new file mode 100644
index 000000000..fd9958075
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-leading-space</title>
+<video><source src="http://f:21/ b"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-percent-encoded-malformed-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-percent-encoded-malformed-novalid.html
new file mode 100644
index 000000000..4d133de21
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-percent-encoded-malformed-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-percent-encoded-malformed</title>
+<video><source src="http://example.com/foo/%2e%2"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-relative-square-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-relative-square-brackets-novalid.html
new file mode 100644
index 000000000..b7fba0247
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-relative-square-brackets-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-relative-square-brackets</title>
+<video><source src="[61:24:74]:98"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-tab-novalid.html
new file mode 100644
index 000000000..a75594861
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-tab</title>
+<video><source src="http://example.com/foo bar"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-trailing-space-novalid.html
new file mode 100644
index 000000000..e410928b0
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-trailing-space</title>
+<video><source src="http://f:21/b ?"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-u0091-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-u0091-novalid.html
new file mode 100644
index 000000000..315c9c040
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/path-u0091-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-u0091</title>
+<video><source src="http://example.com/foo‘"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-999999-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-999999-novalid.html
new file mode 100644
index 000000000..c635f3b66
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-999999-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-999999</title>
+<video><source src="http://f:999999/c"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-cr-novalid.html
new file mode 100644
index 000000000..f4a35d68a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-cr</title>
+<video><source src="http://f: /c"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-colon-bracket-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-colon-bracket-colon-novalid.html
new file mode 100644
index 000000000..6162bb6ec
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-colon-bracket-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-leading-colon-bracket-colon</title>
+<video><source src="http://2001::1]:80"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-colon-novalid.html
new file mode 100644
index 000000000..590459c48
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-leading-colon</title>
+<video><source src="http://2001::1"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-dash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-dash-novalid.html
new file mode 100644
index 000000000..32aa2a609
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-leading-dash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-leading-dash</title>
+<video><source src="http://foo:-80/"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-multiple-letters-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-multiple-letters-novalid.html
new file mode 100644
index 000000000..0c5edbf21
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-multiple-letters-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-multiple-letters</title>
+<video><source src="http://f:fifty-two/c"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-newline-novalid.html
new file mode 100644
index 000000000..b5103483b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-newline</title>
+<video><source src="http://f:
+/c"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-single-letter-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-single-letter-novalid.html
new file mode 100644
index 000000000..6359c2dec
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-single-letter-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-single-letter</title>
+<video><source src="http://f:b/c"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-space-novalid.html
new file mode 100644
index 000000000..8b255e538
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-space</title>
+<video><source src="http://f: /c"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-tab-novalid.html
new file mode 100644
index 000000000..7e3eede3c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/port-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-tab</title>
+<video><source src="http://f: /c"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/query-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/query-leading-space-novalid.html
new file mode 100644
index 000000000..c2b2ccf61
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/query-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: query-leading-space</title>
+<video><source src="http://f:21/b? d"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/query-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/query-trailing-space-novalid.html
new file mode 100644
index 000000000..3d18f7316
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/query-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: query-trailing-space</title>
+<video><source src="http://f:21/b?d #"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-data-contains-fragment-haswarn.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-data-contains-fragment-haswarn.html
new file mode 100644
index 000000000..c92f72c9d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-data-contains-fragment-haswarn.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>src warning: scheme-data-contains-fragment</title>
+<video><source src="data:text/html,test#test"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-data-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-data-single-slash-novalid.html
new file mode 100644
index 000000000..5be1b6aa5
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-data-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-data-single-slash</title>
+<video><source src="data:/example.com/"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-backslash-novalid.html
new file mode 100644
index 000000000..3d2ba290e
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-file-backslash</title>
+<video><source src="file:c:\foo\bar.html"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-single-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-single-slash-c-bar-novalid.html
new file mode 100644
index 000000000..3f7312176
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-single-slash-c-bar-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-file-single-slash-c-bar</title>
+<video><source src="file:/C|/foo/bar"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-triple-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-triple-slash-c-bar-novalid.html
new file mode 100644
index 000000000..b1d44ebc7
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-file-triple-slash-c-bar-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-file-triple-slash-c-bar</title>
+<video><source src="file:///C|/foo/bar"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-ftp-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-ftp-no-slash-novalid.html
new file mode 100644
index 000000000..5388a0e6a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-ftp-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-ftp-no-slash</title>
+<video><source src="ftp:example.com/"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-ftp-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-ftp-single-slash-novalid.html
new file mode 100644
index 000000000..f24622fe2
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-ftp-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-ftp-single-slash</title>
+<video><source src="ftp:/example.com/"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-backslash-novalid.html
new file mode 100644
index 000000000..de2b3888c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-http-backslash</title>
+<video><source src="http:\\foo.com\"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-colon-novalid.html
new file mode 100644
index 000000000..c331a355d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-http-no-slash-colon</title>
+<video><source src="http::@c:29"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-novalid.html
new file mode 100644
index 000000000..fa4992049
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-http-no-slash</title>
+<video><source src="http:foo.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-square-bracket-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-square-bracket-novalid.html
new file mode 100644
index 000000000..576fef6f4
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-no-slash-square-bracket-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-http-no-slash-square-bracket</title>
+<video><source src="http:[61:27]/:foo"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-single-slash-novalid.html
new file mode 100644
index 000000000..09837749c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-http-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-http-single-slash</title>
+<video><source src="http:/example.com/"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-https-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-https-no-slash-novalid.html
new file mode 100644
index 000000000..931e59c00
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-https-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-https-no-slash</title>
+<video><source src="https:example.com/"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-https-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-https-single-slash-novalid.html
new file mode 100644
index 000000000..87f75d8fb
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-https-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-https-single-slash</title>
+<video><source src="https:/example.com/"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-javascript-no-slash-malformed-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-javascript-no-slash-malformed-novalid.html
new file mode 100644
index 000000000..6516b4231
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-javascript-no-slash-malformed-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-javascript-no-slash-malformed</title>
+<video><source src="javascript:example.com/"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-cr-novalid.html
new file mode 100644
index 000000000..99170ba10
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-trailing-cr</title>
+<video><source src="a: foo.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-newline-novalid.html
new file mode 100644
index 000000000..4e68da6e7
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-trailing-newline</title>
+<video><source src="a:
+foo.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-space-novalid.html
new file mode 100644
index 000000000..8a7e5471c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-trailing-space</title>
+<video><source src="a: foo.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-tab-novalid.html
new file mode 100644
index 000000000..87ebab22d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/scheme-trailing-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-trailing-tab</title>
+<video><source src="a: foo.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-backslash-novalid.html
new file mode 100644
index 000000000..110363739
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: userinfo-backslash</title>
+<video><source src="http://a\b:c\d@foo.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-password-bad-chars-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-password-bad-chars-novalid.html
new file mode 100644
index 000000000..2e88fd4d4
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-password-bad-chars-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: userinfo-password-bad-chars</title>
+<video><source src="http://&a:foo(b]c@d:2/"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-password-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-password-contains-pile-of-poo-novalid.html
new file mode 100644
index 000000000..147678b38
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-password-contains-pile-of-poo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: userinfo-password-contains-pile-of-poo</title>
+<video><source src="http://foo:💩@example.com"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-username-contains-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-username-contains-at-sign-novalid.html
new file mode 100644
index 000000000..c6f9bef71
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-username-contains-at-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: userinfo-username-contains-at-sign</title>
+<video><source src="http://::@c@d:2"></video>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-username-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-username-contains-pile-of-poo-novalid.html
new file mode 100644
index 000000000..fb2f9413f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/source/src/userinfo-username-contains-pile-of-poo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: userinfo-username-contains-pile-of-poo</title>
+<video><source src="http://💩:foo@example.com"></video>