summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/conformance-checkers/html/elements/input
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /testing/web-platform/tests/conformance-checkers/html/elements/input
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'testing/web-platform/tests/conformance-checkers/html/elements/input')
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/list-novalid.html11
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/pattern-asterisk-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/pattern-paren-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-isvalid.html91
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-whitespace-only-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-contains-hash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-double-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-double-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-userinfo-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-with-userinfo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-hostname-in-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-invalid-unicode-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-invalid-unicode-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-square-brackets-port-contains-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-u0000-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-u0000-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-bare-percent-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-contains-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-backslash-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-colon-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-colon-chars-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-percent-encoded-malformed-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-relative-square-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-u0091-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-999999-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-colon-bracket-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-dash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-multiple-letters-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-single-letter-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/query-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/query-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-data-contains-fragment-haswarn.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-data-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-single-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-triple-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-ftp-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-ftp-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-square-bracket-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-https-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-https-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-javascript-no-slash-malformed-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-password-bad-chars-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-password-contains-pile-of-poo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-username-contains-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-username-contains-pile-of-poo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-isvalid.html91
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-whitespace-only-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-contains-hash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-double-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-double-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-empty-userinfo-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-empty-with-userinfo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-hostname-in-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-invalid-unicode-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-invalid-unicode-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-square-brackets-port-contains-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-u0000-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-u0000-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-bare-percent-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-contains-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-backslash-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-colon-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-colon-chars-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-percent-encoded-malformed-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-relative-square-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-u0091-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-999999-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-leading-colon-bracket-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-leading-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-leading-dash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-multiple-letters-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-single-letter-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/query-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/query-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-data-contains-fragment-haswarn.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-data-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-file-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-file-single-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-file-triple-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-ftp-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-ftp-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-no-slash-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-no-slash-square-bracket-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-https-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-https-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-javascript-no-slash-malformed-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-password-bad-chars-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-password-contains-pile-of-poo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-username-contains-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-username-contains-pile-of-poo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-isvalid.html91
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-whitespace-only-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-contains-hash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-double-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-double-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-userinfo-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-with-userinfo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-hostname-in-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-invalid-unicode-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-invalid-unicode-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-square-brackets-port-contains-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-u0000-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-u0000-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-bare-percent-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-contains-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-backslash-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-colon-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-colon-chars-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-percent-encoded-malformed-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-relative-square-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-u0091-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-999999-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-colon-bracket-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-dash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-multiple-letters-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-single-letter-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/query-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/query-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-data-contains-fragment-haswarn.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-data-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-single-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-triple-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-ftp-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-ftp-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-square-bracket-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-https-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-https-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-javascript-no-slash-malformed-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-password-bad-chars-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-password-contains-pile-of-poo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-username-contains-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-username-contains-pile-of-poo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value-empty-isvalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value-isvalid.html70
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-contains-hash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-empty-hash-only-no-path-relative-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-non-ascii-relative-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-semicolon-question-mark-relative-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-slash-relative-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-double-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-double-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-userinfo-empty-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-with-userinfo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-hostname-in-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-invalid-unicode-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-invalid-unicode-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-square-brackets-port-contains-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-u0000-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-u0000-percent-encoded-percent-encoded-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-bare-percent-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-contains-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-backslash-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-colon-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-colon-chars-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-malformed-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-slash-plus-slashes-relative-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-slash-relative-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-relative-square-brackets-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-simple-relative-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-slash-only-relative-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-u0091-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-999999-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-colon-bracket-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-dash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-multiple-letters-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-single-letter-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-empty-no-path-relative-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-leading-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-data-contains-fragment-haswarn.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-data-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-single-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-triple-slash-c-bar-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-ftp-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-ftp-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-colon-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-square-bracket-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-https-no-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-https-single-slash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-javascript-no-slash-malformed-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-schemeless-relative-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-cr-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-newline-novalid.html5
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-space-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-tab-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-backslash-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-password-bad-chars-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-password-contains-pile-of-poo-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-username-contains-at-sign-novalid.html4
-rw-r--r--testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-username-contains-pile-of-poo-novalid.html4
284 files changed, 1485 insertions, 0 deletions
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/list-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/list-novalid.html
new file mode 100644
index 000000000..63f43af1f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/list-novalid.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html>
+<head>
+<title>invalid input/@list reference to datalist/@id</title>
+<meta charset=utf-8>
+</head>
+<body>
+<datalist id=foo></datalist>
+<input type=text list=bar>
+</body>
+</html>
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/pattern-asterisk-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/pattern-asterisk-novalid.html
new file mode 100644
index 000000000..397344c0d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/pattern-asterisk-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid pattern</title>
+<p><input pattern='*'></p> \ No newline at end of file
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/pattern-paren-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/pattern-paren-novalid.html
new file mode 100644
index 000000000..892cc02f1
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/pattern-paren-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid pattern</title>
+<p><input pattern='('></p> \ No newline at end of file
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-empty-novalid.html
new file mode 100644
index 000000000..5deda965c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>empty formaction is not valid</title>
+<input type=image alt="foo" formaction="">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-isvalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-isvalid.html
new file mode 100644
index 000000000..ea797c3b9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-isvalid.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>valid formaction</title>
+<input type=image alt="foo" formaction="file:///"><!-- scheme-file-slash-slash-slash-only -->
+<input type=image alt="foo" formaction="http://a:@www.example.com"><!-- userinfo-password-empty -->
+<input type=image alt="foo" formaction="foo://///////"><!-- scheme-private-path-leading-slashes-only -->
+<input type=image alt="foo" formaction="file://abc|/foo/bar"><!-- scheme-file-slash-slash-abc-bar -->
+<input type=image alt="foo" formaction="/a/b/c"><!-- path-simple-relative -->
+<input type=image alt="foo" formaction="http://example.com/你好你好"><!-- path-unicode-han -->
+<input type=image alt="foo" formaction="/a/%2f/c"><!-- path-percent-encoded-slash-plus-slashes-relative -->
+<input type=image alt="foo" formaction="http://f:/c"><!-- port-none-but-colon -->
+<input type=image alt="foo" formaction="http://example.com/foo%41%7a"><!-- path-percent-encoded-multiple -->
+<input type=image alt="foo" formaction="http://192.168.0.257/"><!-- host-IP-address-broken -->
+<input type=image alt="foo" formaction="madeupscheme:example.com/"><!-- scheme-private-no-slash -->
+<input type=image alt="foo" formaction="?"><!-- query-empty-no-path-relative -->
+<input type=image alt="foo" formaction="http://example.com/%20foo"><!-- path-percent-encoded-space -->
+<input type=image alt="foo" formaction="mailto:/example.com/"><!-- scheme-mailto-single-slash -->
+<input type=image alt="foo" formaction="::"><!-- path-leading-colon-colon-relative -->
+<input type=image alt="foo" formaction="http://example.com/%3A%3a%3C%3c"><!-- path-percent-encoded-mixed-case -->
+<input type=image alt="foo" formaction="http://user:pass@foo:21/bar;par?b#c"><!-- userinfo -->
+<input type=image alt="foo" formaction="ws:/example.com/"><!-- scheme-ws-single-slash -->
+<input type=image alt="foo" formaction="foo://"><!-- scheme-private-slash-slash -->
+<input type=image alt="foo" formaction="#"><!-- fragment-empty-hash-only-no-path-relative -->
+<input type=image alt="foo" formaction="http://f:00000000000000/c"><!-- port-00000000000000 -->
+<input type=image alt="foo" formaction="foo:////://///"><!-- scheme-private-path-leading-slashes-colon-slashes -->
+<input type=image alt="foo" formaction=":23"><!-- path-leading-colon-number-relative -->
+<input type=image alt="foo" formaction="foo:/"><!-- scheme-private-slash -->
+<input type=image alt="foo" formaction="http://💩"><!-- host-is-pile-of-poo -->
+<input type=image alt="foo" formaction="file:test"><!-- scheme-file-no-slash -->
+<input type=image alt="foo" formaction="file://C|/foo/bar"><!-- scheme-file-slash-slash-c-bar -->
+<input type=image alt="foo" formaction="#/"><!-- fragment-slash-relative -->
+<input type=image alt="foo" formaction="http://192.0x00A80001"><!-- host-192.0x00A80001 -->
+<input type=image alt="foo" formaction="foo.com"><!-- scheme-none-relative -->
+<input type=image alt="foo" formaction="http💩//:foo"><!-- path-contains-pile-of-poo -->
+<input type=image alt="foo" formaction="File://foo/bar.html"><!-- scheme-file-uppercase -->
+<input type=image alt="foo" formaction=":/"><!-- path-leading-colon-slash-relative -->
+<input type=image alt="foo" formaction="http://www.foo。bar.com"><!-- host-exotic-dot -->
+<input type=image alt="foo" formaction="http://GOO​⁠goo.com"><!-- host-exotic-whitespace -->
+<input type=image alt="foo" formaction="file:///foo/bar.txt"><!-- scheme-file-host-empty -->
+<input type=image alt="foo" formaction="javascript:/example.com/"><!-- scheme-javascript-single-slash -->
+<input type=image alt="foo" formaction="gopher:/example.com/"><!-- scheme-gopher-single-slash -->
+<input type=image alt="foo" formaction="ftps:example.com/"><!-- scheme-ftps-no-slash -->
+<input type=image alt="foo" formaction="file://server/foo/bar"><!-- scheme-file-host-included -->
+<input type=image alt="foo" formaction="http://example.com/foo%00"><!-- path-percent-encoded-u0000 -->
+<input type=image alt="foo" formaction="a:foo.com"><!-- scheme-private -->
+<input type=image alt="foo" formaction=":"><!-- path-colon-relative -->
+<input type=image alt="foo" formaction="http://:b@www.example.com"><!-- userinfo-user-empty -->
+<input type=image alt="foo" formaction="file:/"><!-- scheme-file-slash-only -->
+<input type=image alt="foo" formaction="wss:example.com/"><!-- scheme-wss-no-slash -->
+<input type=image alt="foo" formaction="::23"><!-- path-colon-colon-number-relative -->
+<input type=image alt="foo" formaction="/a%2fc"><!-- path-percent-encoded-slash-relative -->
+<input type=image alt="foo" formaction="http://a:b@c:29/d"><!-- userinfo-host-port-path -->
+<input type=image alt="foo" formaction="gopher:example.com/"><!-- scheme-gopher-no-slash -->
+<input type=image alt="foo" formaction="madeupscheme:/example.com/"><!-- scheme-private-single-slash -->
+<input type=image alt="foo" formaction="mailto:example.com/"><!-- scheme-mailto-no-slash -->
+<input type=image alt="foo" formaction="http://%25DOMAIN:foobar@foodomain.com"><!-- userinfo-username-contains-percent-encoded -->
+<input type=image alt="foo" formaction="/:23"><!-- path-slash-colon-number-relative -->
+<input type=image alt="foo" formaction="foo://///////bar.com/"><!-- scheme-private-path-leading-slashes-chars -->
+<input type=image alt="foo" formaction="http://[2001::1]:80"><!-- host-ipv6-port -->
+<input type=image alt="foo" formaction="data:text/plain,foo"><!-- scheme-data-no-slash -->
+<input type=image alt="foo" formaction="http://example.com/foo/%2e"><!-- path-percent-encoded-dot -->
+<input type=image alt="foo" formaction="file:/example.com/"><!-- scheme-file-single-slash -->
+<input type=image alt="foo" formaction="http://example.com/©zbar"><!-- path-non-ascii -->
+<input type=image alt="foo" formaction="http://example.com//foo"><!-- path-uFEFF -->
+<input type=image alt="foo" formaction="wss:/example.com/"><!-- scheme-wss-single-slash -->
+<input type=image alt="foo" formaction="http://foo/abcd#foo?bar"><!-- fragment-contains-question-mark -->
+<input type=image alt="foo" formaction=":#"><!-- path-leading-colon-hash-relative -->
+<input type=image alt="foo" formaction="http://example.com/foo%91"><!-- path-percent-encoded-u0091 -->
+<input type=image alt="foo" formaction="c:/foo"><!-- scheme-private-single-letter -->
+<input type=image alt="foo" formaction=":foo.com"><!-- path-leading-colon-chars-relative -->
+<input type=image alt="foo" formaction="http://你好你好"><!-- host-idn-unicode-han -->
+<input type=image alt="foo" formaction="http://example.com/foo#💩"><!-- fragment-contains-pile-of-poo -->
+<input type=image alt="foo" formaction="file:"><!-- scheme-file-scheme-only -->
+<input type=image alt="foo" formaction="#β"><!-- fragment-non-ascii-relative -->
+<input type=image alt="foo" formaction="foo:/bar.com/"><!-- scheme-private-path -->
+<input type=image alt="foo" formaction="http://f:0/c"><!-- port-0 -->
+<input type=image alt="foo" formaction="#;?"><!-- fragment-semicolon-question-mark-relative -->
+<input type=image alt="foo" formaction="http://Go.com"><!-- host-fullwidth -->
+<input type=image alt="foo" formaction="http://@www.example.com"><!-- userinfo-empty -->
+<input type=image alt="foo" formaction="http://example.com/‮/foo/‭/bar"><!-- path-u202E-u202D -->
+<input type=image alt="foo" formaction="http://[2001::1]"><!-- host-ipv6 -->
+<input type=image alt="foo" formaction="💩http://foo"><!-- path-starts-with-pile-of-poo -->
+<input type=image alt="foo" formaction="http://foo/abcd?efgh?ijkl"><!-- query-contains-question-mark -->
+<input type=image alt="foo" formaction="//foo/bar"><!-- scheme-schemeless-relative -->
+<input type=image alt="foo" formaction="ftps:/example.com/"><!-- scheme-ftps-single-slash -->
+<input type=image alt="foo" formaction="http://foo.com:b@d/"><!-- userinfo-username-non-alpha -->
+<input type=image alt="foo" formaction=":a"><!-- path-leading-colon-letter-relative -->
+<input type=image alt="foo" formaction="/"><!-- path-slash-only-relative -->
+<input type=image alt="foo" formaction="http://example.com/foo?💩"><!-- query-contains-pile-of-poo -->
+<input type=image alt="foo" formaction="http://f:00000000000000000000080/c"><!-- port-00000000000000000000080 -->
+<input type=image alt="foo" formaction="file://"><!-- scheme-file-slash-slash-only -->
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-whitespace-only-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-whitespace-only-novalid.html
new file mode 100644
index 000000000..1c7fae12b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction-whitespace-only-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>empty formaction is not valid</title>
+<input type=image alt="foo" formaction="
+">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-backslash-novalid.html
new file mode 100644
index 000000000..dee7e3b05
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: fragment-backslash</title>
+<input type=image alt="foo" formaction="#\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-contains-hash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-contains-hash-novalid.html
new file mode 100644
index 000000000..3bc4e4cdd
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-contains-hash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: fragment-contains-hash</title>
+<input type=image alt="foo" formaction="http://foo/path#f#g">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-leading-space-novalid.html
new file mode 100644
index 000000000..07a0678ee
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/fragment-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: fragment-leading-space</title>
+<input type=image alt="foo" formaction="http://f:21/b# e">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-cr-novalid.html
new file mode 100644
index 000000000..48919b1d8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-cr</title>
+<input type=image alt="foo" formaction="http://example. org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-double-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-double-percent-encoded-novalid.html
new file mode 100644
index 000000000..0919432af
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-double-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-double-percent-encoded</title>
+<input type=image alt="foo" formaction="http://%41.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-double-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-double-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 000000000..007e045f6
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-double-percent-encoded-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-double-percent-encoded-percent-encoded</title>
+<input type=image alt="foo" formaction="http://%ef%bc%85%ef%bc%94%ef%bc%91.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-novalid.html
new file mode 100644
index 000000000..479146ab9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-empty</title>
+<input type=image alt="foo" formaction="http://">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-userinfo-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-userinfo-empty-novalid.html
new file mode 100644
index 000000000..62339541a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-userinfo-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-empty-userinfo-empty</title>
+<input type=image alt="foo" formaction="http://@/www.example.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-with-userinfo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-with-userinfo-novalid.html
new file mode 100644
index 000000000..30c5f8e86
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-empty-with-userinfo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-empty-with-userinfo</title>
+<input type=image alt="foo" formaction="http://user:pass@/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-hostname-in-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-hostname-in-brackets-novalid.html
new file mode 100644
index 000000000..dab28abff
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-hostname-in-brackets-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-hostname-in-brackets</title>
+<input type=image alt="foo" formaction="http://[www.google.com]/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-invalid-unicode-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-invalid-unicode-novalid.html
new file mode 100644
index 000000000..b389ecb58
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-invalid-unicode-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-invalid-unicode</title>
+<input type=image alt="foo" formaction="http://﷐zyx.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-invalid-unicode-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-invalid-unicode-percent-encoded-novalid.html
new file mode 100644
index 000000000..eab019064
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-invalid-unicode-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-invalid-unicode-percent-encoded</title>
+<input type=image alt="foo" formaction="http://%ef%b7%90zyx.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-newline-novalid.html
new file mode 100644
index 000000000..6af1be049
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-newline</title>
+<input type=image alt="foo" formaction="http://example.
+org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-space-novalid.html
new file mode 100644
index 000000000..6b9e40850
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-space</title>
+<input type=image alt="foo" formaction="http://example .org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-square-brackets-port-contains-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-square-brackets-port-contains-colon-novalid.html
new file mode 100644
index 000000000..fa76475e3
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-square-brackets-port-contains-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-square-brackets-port-contains-colon</title>
+<input type=image alt="foo" formaction="http://[1::2]:3:4">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-tab-novalid.html
new file mode 100644
index 000000000..2a50d5275
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-tab</title>
+<input type=image alt="foo" formaction="http://example .org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-u0000-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-u0000-percent-encoded-novalid.html
new file mode 100644
index 000000000..d6fb95796
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-u0000-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-u0000-percent-encoded</title>
+<input type=image alt="foo" formaction="http://%00.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-u0000-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-u0000-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 000000000..a55751d8d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/host-u0000-percent-encoded-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-u0000-percent-encoded-percent-encoded</title>
+<input type=image alt="foo" formaction="http://%ef%bc%85%ef%bc%90%ef%bc%90.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-bare-percent-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-bare-percent-sign-novalid.html
new file mode 100644
index 000000000..1a8e6444c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-bare-percent-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-bare-percent-sign</title>
+<input type=image alt="foo" formaction="http://example.com/foo%">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-contains-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-contains-space-novalid.html
new file mode 100644
index 000000000..a74a6604f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-contains-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-contains-space</title>
+<input type=image alt="foo" formaction="/a/ /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-backslash-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-backslash-at-sign-novalid.html
new file mode 100644
index 000000000..db8534ac3
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-backslash-at-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-leading-backslash-at-sign</title>
+<input type=image alt="foo" formaction="http://foo.com/\@">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-colon-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-colon-backslash-novalid.html
new file mode 100644
index 000000000..ee2cb3157
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-colon-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-leading-colon-backslash</title>
+<input type=image alt="foo" formaction=":\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-colon-chars-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-colon-chars-backslash-novalid.html
new file mode 100644
index 000000000..843915930
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-colon-chars-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-leading-colon-chars-backslash</title>
+<input type=image alt="foo" formaction=":foo.com\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-space-novalid.html
new file mode 100644
index 000000000..dc991b8db
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-leading-space</title>
+<input type=image alt="foo" formaction="http://f:21/ b">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-percent-encoded-malformed-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-percent-encoded-malformed-novalid.html
new file mode 100644
index 000000000..830ecfa13
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-percent-encoded-malformed-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-percent-encoded-malformed</title>
+<input type=image alt="foo" formaction="http://example.com/foo/%2e%2">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-relative-square-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-relative-square-brackets-novalid.html
new file mode 100644
index 000000000..222a0bd94
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-relative-square-brackets-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-relative-square-brackets</title>
+<input type=image alt="foo" formaction="[61:24:74]:98">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-tab-novalid.html
new file mode 100644
index 000000000..b0440aabd
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-tab</title>
+<input type=image alt="foo" formaction="http://example.com/foo bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-trailing-space-novalid.html
new file mode 100644
index 000000000..61a6a1a1b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-trailing-space</title>
+<input type=image alt="foo" formaction="http://f:21/b ?">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-u0091-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-u0091-novalid.html
new file mode 100644
index 000000000..3edbb7aab
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/path-u0091-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-u0091</title>
+<input type=image alt="foo" formaction="http://example.com/foo‘">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-999999-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-999999-novalid.html
new file mode 100644
index 000000000..a01365d72
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-999999-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-999999</title>
+<input type=image alt="foo" formaction="http://f:999999/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-cr-novalid.html
new file mode 100644
index 000000000..ceca5a835
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-cr</title>
+<input type=image alt="foo" formaction="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-colon-bracket-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-colon-bracket-colon-novalid.html
new file mode 100644
index 000000000..f81445218
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-colon-bracket-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-leading-colon-bracket-colon</title>
+<input type=image alt="foo" formaction="http://2001::1]:80">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-colon-novalid.html
new file mode 100644
index 000000000..fd3d244c8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-leading-colon</title>
+<input type=image alt="foo" formaction="http://2001::1">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-dash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-dash-novalid.html
new file mode 100644
index 000000000..a41365256
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-leading-dash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-leading-dash</title>
+<input type=image alt="foo" formaction="http://foo:-80/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-multiple-letters-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-multiple-letters-novalid.html
new file mode 100644
index 000000000..f899b643d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-multiple-letters-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-multiple-letters</title>
+<input type=image alt="foo" formaction="http://f:fifty-two/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-newline-novalid.html
new file mode 100644
index 000000000..efa6fef43
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-newline</title>
+<input type=image alt="foo" formaction="http://f:
+/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-single-letter-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-single-letter-novalid.html
new file mode 100644
index 000000000..6b04af7a8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-single-letter-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-single-letter</title>
+<input type=image alt="foo" formaction="http://f:b/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-space-novalid.html
new file mode 100644
index 000000000..666db3a7f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-space</title>
+<input type=image alt="foo" formaction="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-tab-novalid.html
new file mode 100644
index 000000000..dd6717160
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/port-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-tab</title>
+<input type=image alt="foo" formaction="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/query-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/query-leading-space-novalid.html
new file mode 100644
index 000000000..01d360dd5
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/query-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: query-leading-space</title>
+<input type=image alt="foo" formaction="http://f:21/b? d">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/query-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/query-trailing-space-novalid.html
new file mode 100644
index 000000000..98322081e
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/query-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: query-trailing-space</title>
+<input type=image alt="foo" formaction="http://f:21/b?d #">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-data-contains-fragment-haswarn.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-data-contains-fragment-haswarn.html
new file mode 100644
index 000000000..aa3ea3aad
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-data-contains-fragment-haswarn.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>formaction warning: scheme-data-contains-fragment</title>
+<input type=image alt="foo" formaction="data:text/html,test#test">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-data-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-data-single-slash-novalid.html
new file mode 100644
index 000000000..48e5ec30b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-data-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-data-single-slash</title>
+<input type=image alt="foo" formaction="data:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-backslash-novalid.html
new file mode 100644
index 000000000..e77493c24
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-file-backslash</title>
+<input type=image alt="foo" formaction="file:c:\foo\bar.html">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-single-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-single-slash-c-bar-novalid.html
new file mode 100644
index 000000000..3a12a2f2c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-single-slash-c-bar-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-file-single-slash-c-bar</title>
+<input type=image alt="foo" formaction="file:/C|/foo/bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-triple-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-triple-slash-c-bar-novalid.html
new file mode 100644
index 000000000..da3f423ea
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-file-triple-slash-c-bar-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-file-triple-slash-c-bar</title>
+<input type=image alt="foo" formaction="file:///C|/foo/bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-ftp-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-ftp-no-slash-novalid.html
new file mode 100644
index 000000000..620a37c83
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-ftp-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-ftp-no-slash</title>
+<input type=image alt="foo" formaction="ftp:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-ftp-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-ftp-single-slash-novalid.html
new file mode 100644
index 000000000..e5f064e25
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-ftp-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-ftp-single-slash</title>
+<input type=image alt="foo" formaction="ftp:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-backslash-novalid.html
new file mode 100644
index 000000000..cad3f1e99
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-http-backslash</title>
+<input type=image alt="foo" formaction="http:\\foo.com\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-colon-novalid.html
new file mode 100644
index 000000000..fb1ecc696
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-http-no-slash-colon</title>
+<input type=image alt="foo" formaction="http::@c:29">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-novalid.html
new file mode 100644
index 000000000..62bdcd8c2
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-http-no-slash</title>
+<input type=image alt="foo" formaction="http:foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-square-bracket-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-square-bracket-novalid.html
new file mode 100644
index 000000000..90f76c9d1
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-no-slash-square-bracket-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-http-no-slash-square-bracket</title>
+<input type=image alt="foo" formaction="http:[61:27]/:foo">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-single-slash-novalid.html
new file mode 100644
index 000000000..9f1a49211
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-http-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-http-single-slash</title>
+<input type=image alt="foo" formaction="http:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-https-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-https-no-slash-novalid.html
new file mode 100644
index 000000000..2357c0a1e
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-https-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-https-no-slash</title>
+<input type=image alt="foo" formaction="https:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-https-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-https-single-slash-novalid.html
new file mode 100644
index 000000000..4e3075b49
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-https-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-https-single-slash</title>
+<input type=image alt="foo" formaction="https:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-javascript-no-slash-malformed-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-javascript-no-slash-malformed-novalid.html
new file mode 100644
index 000000000..727da488f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-javascript-no-slash-malformed-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-javascript-no-slash-malformed</title>
+<input type=image alt="foo" formaction="javascript:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-cr-novalid.html
new file mode 100644
index 000000000..45affd7ec
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-trailing-cr</title>
+<input type=image alt="foo" formaction="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-newline-novalid.html
new file mode 100644
index 000000000..161cffbf6
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-trailing-newline</title>
+<input type=image alt="foo" formaction="a:
+foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-space-novalid.html
new file mode 100644
index 000000000..ebd08615a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-trailing-space</title>
+<input type=image alt="foo" formaction="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-tab-novalid.html
new file mode 100644
index 000000000..1429b7a27
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/scheme-trailing-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-trailing-tab</title>
+<input type=image alt="foo" formaction="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-backslash-novalid.html
new file mode 100644
index 000000000..a0df503e1
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: userinfo-backslash</title>
+<input type=image alt="foo" formaction="http://a\b:c\d@foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-password-bad-chars-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-password-bad-chars-novalid.html
new file mode 100644
index 000000000..1673f65ec
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-password-bad-chars-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: userinfo-password-bad-chars</title>
+<input type=image alt="foo" formaction="http://&a:foo(b]c@d:2/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-password-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-password-contains-pile-of-poo-novalid.html
new file mode 100644
index 000000000..aae3d288a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-password-contains-pile-of-poo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: userinfo-password-contains-pile-of-poo</title>
+<input type=image alt="foo" formaction="http://foo:💩@example.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-username-contains-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-username-contains-at-sign-novalid.html
new file mode 100644
index 000000000..cc0652c8b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-username-contains-at-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: userinfo-username-contains-at-sign</title>
+<input type=image alt="foo" formaction="http://::@c@d:2">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-username-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-username-contains-pile-of-poo-novalid.html
new file mode 100644
index 000000000..abc75f3ed
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-formaction/userinfo-username-contains-pile-of-poo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: userinfo-username-contains-pile-of-poo</title>
+<input type=image alt="foo" formaction="http://💩:foo@example.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-empty-novalid.html
new file mode 100644
index 000000000..f773a2aa4
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>empty src is not valid</title>
+<input type=image alt="foo" src="">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-isvalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-isvalid.html
new file mode 100644
index 000000000..0d744c002
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-isvalid.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>valid src</title>
+<input type=image alt="foo" src="file:///"><!-- scheme-file-slash-slash-slash-only -->
+<input type=image alt="foo" src="http://a:@www.example.com"><!-- userinfo-password-empty -->
+<input type=image alt="foo" src="foo://///////"><!-- scheme-private-path-leading-slashes-only -->
+<input type=image alt="foo" src="file://abc|/foo/bar"><!-- scheme-file-slash-slash-abc-bar -->
+<input type=image alt="foo" src="/a/b/c"><!-- path-simple-relative -->
+<input type=image alt="foo" src="http://example.com/你好你好"><!-- path-unicode-han -->
+<input type=image alt="foo" src="/a/%2f/c"><!-- path-percent-encoded-slash-plus-slashes-relative -->
+<input type=image alt="foo" src="http://f:/c"><!-- port-none-but-colon -->
+<input type=image alt="foo" src="http://example.com/foo%41%7a"><!-- path-percent-encoded-multiple -->
+<input type=image alt="foo" src="http://192.168.0.257/"><!-- host-IP-address-broken -->
+<input type=image alt="foo" src="madeupscheme:example.com/"><!-- scheme-private-no-slash -->
+<input type=image alt="foo" src="?"><!-- query-empty-no-path-relative -->
+<input type=image alt="foo" src="http://example.com/%20foo"><!-- path-percent-encoded-space -->
+<input type=image alt="foo" src="mailto:/example.com/"><!-- scheme-mailto-single-slash -->
+<input type=image alt="foo" src="::"><!-- path-leading-colon-colon-relative -->
+<input type=image alt="foo" src="http://example.com/%3A%3a%3C%3c"><!-- path-percent-encoded-mixed-case -->
+<input type=image alt="foo" src="http://user:pass@foo:21/bar;par?b#c"><!-- userinfo -->
+<input type=image alt="foo" src="ws:/example.com/"><!-- scheme-ws-single-slash -->
+<input type=image alt="foo" src="foo://"><!-- scheme-private-slash-slash -->
+<input type=image alt="foo" src="#"><!-- fragment-empty-hash-only-no-path-relative -->
+<input type=image alt="foo" src="http://f:00000000000000/c"><!-- port-00000000000000 -->
+<input type=image alt="foo" src="foo:////://///"><!-- scheme-private-path-leading-slashes-colon-slashes -->
+<input type=image alt="foo" src=":23"><!-- path-leading-colon-number-relative -->
+<input type=image alt="foo" src="foo:/"><!-- scheme-private-slash -->
+<input type=image alt="foo" src="http://💩"><!-- host-is-pile-of-poo -->
+<input type=image alt="foo" src="file:test"><!-- scheme-file-no-slash -->
+<input type=image alt="foo" src="file://C|/foo/bar"><!-- scheme-file-slash-slash-c-bar -->
+<input type=image alt="foo" src="#/"><!-- fragment-slash-relative -->
+<input type=image alt="foo" src="http://192.0x00A80001"><!-- host-192.0x00A80001 -->
+<input type=image alt="foo" src="foo.com"><!-- scheme-none-relative -->
+<input type=image alt="foo" src="http💩//:foo"><!-- path-contains-pile-of-poo -->
+<input type=image alt="foo" src="File://foo/bar.html"><!-- scheme-file-uppercase -->
+<input type=image alt="foo" src=":/"><!-- path-leading-colon-slash-relative -->
+<input type=image alt="foo" src="http://www.foo。bar.com"><!-- host-exotic-dot -->
+<input type=image alt="foo" src="http://GOO​⁠goo.com"><!-- host-exotic-whitespace -->
+<input type=image alt="foo" src="file:///foo/bar.txt"><!-- scheme-file-host-empty -->
+<input type=image alt="foo" src="javascript:/example.com/"><!-- scheme-javascript-single-slash -->
+<input type=image alt="foo" src="gopher:/example.com/"><!-- scheme-gopher-single-slash -->
+<input type=image alt="foo" src="ftps:example.com/"><!-- scheme-ftps-no-slash -->
+<input type=image alt="foo" src="file://server/foo/bar"><!-- scheme-file-host-included -->
+<input type=image alt="foo" src="http://example.com/foo%00"><!-- path-percent-encoded-u0000 -->
+<input type=image alt="foo" src="a:foo.com"><!-- scheme-private -->
+<input type=image alt="foo" src=":"><!-- path-colon-relative -->
+<input type=image alt="foo" src="http://:b@www.example.com"><!-- userinfo-user-empty -->
+<input type=image alt="foo" src="file:/"><!-- scheme-file-slash-only -->
+<input type=image alt="foo" src="wss:example.com/"><!-- scheme-wss-no-slash -->
+<input type=image alt="foo" src="::23"><!-- path-colon-colon-number-relative -->
+<input type=image alt="foo" src="/a%2fc"><!-- path-percent-encoded-slash-relative -->
+<input type=image alt="foo" src="http://a:b@c:29/d"><!-- userinfo-host-port-path -->
+<input type=image alt="foo" src="gopher:example.com/"><!-- scheme-gopher-no-slash -->
+<input type=image alt="foo" src="madeupscheme:/example.com/"><!-- scheme-private-single-slash -->
+<input type=image alt="foo" src="mailto:example.com/"><!-- scheme-mailto-no-slash -->
+<input type=image alt="foo" src="http://%25DOMAIN:foobar@foodomain.com"><!-- userinfo-username-contains-percent-encoded -->
+<input type=image alt="foo" src="/:23"><!-- path-slash-colon-number-relative -->
+<input type=image alt="foo" src="foo://///////bar.com/"><!-- scheme-private-path-leading-slashes-chars -->
+<input type=image alt="foo" src="http://[2001::1]:80"><!-- host-ipv6-port -->
+<input type=image alt="foo" src="data:text/plain,foo"><!-- scheme-data-no-slash -->
+<input type=image alt="foo" src="http://example.com/foo/%2e"><!-- path-percent-encoded-dot -->
+<input type=image alt="foo" src="file:/example.com/"><!-- scheme-file-single-slash -->
+<input type=image alt="foo" src="http://example.com/©zbar"><!-- path-non-ascii -->
+<input type=image alt="foo" src="http://example.com//foo"><!-- path-uFEFF -->
+<input type=image alt="foo" src="wss:/example.com/"><!-- scheme-wss-single-slash -->
+<input type=image alt="foo" src="http://foo/abcd#foo?bar"><!-- fragment-contains-question-mark -->
+<input type=image alt="foo" src=":#"><!-- path-leading-colon-hash-relative -->
+<input type=image alt="foo" src="http://example.com/foo%91"><!-- path-percent-encoded-u0091 -->
+<input type=image alt="foo" src="c:/foo"><!-- scheme-private-single-letter -->
+<input type=image alt="foo" src=":foo.com"><!-- path-leading-colon-chars-relative -->
+<input type=image alt="foo" src="http://你好你好"><!-- host-idn-unicode-han -->
+<input type=image alt="foo" src="http://example.com/foo#💩"><!-- fragment-contains-pile-of-poo -->
+<input type=image alt="foo" src="file:"><!-- scheme-file-scheme-only -->
+<input type=image alt="foo" src="#β"><!-- fragment-non-ascii-relative -->
+<input type=image alt="foo" src="foo:/bar.com/"><!-- scheme-private-path -->
+<input type=image alt="foo" src="http://f:0/c"><!-- port-0 -->
+<input type=image alt="foo" src="#;?"><!-- fragment-semicolon-question-mark-relative -->
+<input type=image alt="foo" src="http://Go.com"><!-- host-fullwidth -->
+<input type=image alt="foo" src="http://@www.example.com"><!-- userinfo-empty -->
+<input type=image alt="foo" src="http://example.com/‮/foo/‭/bar"><!-- path-u202E-u202D -->
+<input type=image alt="foo" src="http://[2001::1]"><!-- host-ipv6 -->
+<input type=image alt="foo" src="💩http://foo"><!-- path-starts-with-pile-of-poo -->
+<input type=image alt="foo" src="http://foo/abcd?efgh?ijkl"><!-- query-contains-question-mark -->
+<input type=image alt="foo" src="//foo/bar"><!-- scheme-schemeless-relative -->
+<input type=image alt="foo" src="ftps:/example.com/"><!-- scheme-ftps-single-slash -->
+<input type=image alt="foo" src="http://foo.com:b@d/"><!-- userinfo-username-non-alpha -->
+<input type=image alt="foo" src=":a"><!-- path-leading-colon-letter-relative -->
+<input type=image alt="foo" src="/"><!-- path-slash-only-relative -->
+<input type=image alt="foo" src="http://example.com/foo?💩"><!-- query-contains-pile-of-poo -->
+<input type=image alt="foo" src="http://f:00000000000000000000080/c"><!-- port-00000000000000000000080 -->
+<input type=image alt="foo" src="file://"><!-- scheme-file-slash-slash-only -->
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-whitespace-only-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-whitespace-only-novalid.html
new file mode 100644
index 000000000..e3d0486e6
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src-whitespace-only-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>empty src is not valid</title>
+<input type=image alt="foo" src="
+">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-backslash-novalid.html
new file mode 100644
index 000000000..eda0b37a8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: fragment-backslash</title>
+<input type=image alt="foo" src="#\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-contains-hash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-contains-hash-novalid.html
new file mode 100644
index 000000000..3b4ada533
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-contains-hash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: fragment-contains-hash</title>
+<input type=image alt="foo" src="http://foo/path#f#g">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-leading-space-novalid.html
new file mode 100644
index 000000000..4e91c794a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/fragment-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: fragment-leading-space</title>
+<input type=image alt="foo" src="http://f:21/b# e">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-cr-novalid.html
new file mode 100644
index 000000000..c6c7dcd69
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-cr</title>
+<input type=image alt="foo" src="http://example. org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-double-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-double-percent-encoded-novalid.html
new file mode 100644
index 000000000..3946af19f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://%41.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-double-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-double-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 000000000..0e657ba1a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://%ef%bc%85%ef%bc%94%ef%bc%91.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-empty-novalid.html
new file mode 100644
index 000000000..faac339c6
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-empty</title>
+<input type=image alt="foo" src="http://">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-empty-userinfo-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-empty-userinfo-empty-novalid.html
new file mode 100644
index 000000000..623e61268
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://@/www.example.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-empty-with-userinfo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-empty-with-userinfo-novalid.html
new file mode 100644
index 000000000..9cc6d8624
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://user:pass@/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-hostname-in-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-hostname-in-brackets-novalid.html
new file mode 100644
index 000000000..c48b95b00
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://[www.google.com]/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-invalid-unicode-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-invalid-unicode-novalid.html
new file mode 100644
index 000000000..8595d37ec
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-invalid-unicode-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-invalid-unicode</title>
+<input type=image alt="foo" src="http://﷐zyx.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-invalid-unicode-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-invalid-unicode-percent-encoded-novalid.html
new file mode 100644
index 000000000..3c7f42df1
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://%ef%b7%90zyx.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-newline-novalid.html
new file mode 100644
index 000000000..68fdc0aea
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-newline</title>
+<input type=image alt="foo" src="http://example.
+org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-space-novalid.html
new file mode 100644
index 000000000..45c7e8bb1
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-space</title>
+<input type=image alt="foo" src="http://example .org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-square-brackets-port-contains-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-square-brackets-port-contains-colon-novalid.html
new file mode 100644
index 000000000..b4b5552a8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://[1::2]:3:4">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-tab-novalid.html
new file mode 100644
index 000000000..ae443539c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: host-tab</title>
+<input type=image alt="foo" src="http://example .org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-u0000-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-u0000-percent-encoded-novalid.html
new file mode 100644
index 000000000..8e554bb9c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://%00.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-u0000-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/host-u0000-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 000000000..ea9f960fe
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://%ef%bc%85%ef%bc%90%ef%bc%90.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-bare-percent-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-bare-percent-sign-novalid.html
new file mode 100644
index 000000000..864ea4960
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://example.com/foo%">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-contains-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-contains-space-novalid.html
new file mode 100644
index 000000000..069e2a1c3
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-contains-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-contains-space</title>
+<input type=image alt="foo" src="/a/ /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-backslash-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-backslash-at-sign-novalid.html
new file mode 100644
index 000000000..71b05d901
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://foo.com/\@">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-colon-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-colon-backslash-novalid.html
new file mode 100644
index 000000000..2d4baf910
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src=":\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-colon-chars-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-colon-chars-backslash-novalid.html
new file mode 100644
index 000000000..ef690bbf0
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src=":foo.com\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-space-novalid.html
new file mode 100644
index 000000000..c0204f5c1
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-leading-space</title>
+<input type=image alt="foo" src="http://f:21/ b">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-percent-encoded-malformed-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-percent-encoded-malformed-novalid.html
new file mode 100644
index 000000000..c5222fab6
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://example.com/foo/%2e%2">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-relative-square-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-relative-square-brackets-novalid.html
new file mode 100644
index 000000000..8c05cbef6
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="[61:24:74]:98">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-tab-novalid.html
new file mode 100644
index 000000000..a2b683d9d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-tab</title>
+<input type=image alt="foo" src="http://example.com/foo bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-trailing-space-novalid.html
new file mode 100644
index 000000000..a047676f4
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-trailing-space</title>
+<input type=image alt="foo" src="http://f:21/b ?">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-u0091-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-u0091-novalid.html
new file mode 100644
index 000000000..0da7c170c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/path-u0091-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: path-u0091</title>
+<input type=image alt="foo" src="http://example.com/foo‘">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-999999-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-999999-novalid.html
new file mode 100644
index 000000000..7c5b961f4
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-999999-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-999999</title>
+<input type=image alt="foo" src="http://f:999999/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-cr-novalid.html
new file mode 100644
index 000000000..b2467d2be
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-cr</title>
+<input type=image alt="foo" src="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-leading-colon-bracket-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-leading-colon-bracket-colon-novalid.html
new file mode 100644
index 000000000..1bb21c61b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://2001::1]:80">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-leading-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-leading-colon-novalid.html
new file mode 100644
index 000000000..5b7c18377
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-leading-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-leading-colon</title>
+<input type=image alt="foo" src="http://2001::1">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-leading-dash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-leading-dash-novalid.html
new file mode 100644
index 000000000..0f125e1f8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-leading-dash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-leading-dash</title>
+<input type=image alt="foo" src="http://foo:-80/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-multiple-letters-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-multiple-letters-novalid.html
new file mode 100644
index 000000000..ffc0b8747
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-multiple-letters-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-multiple-letters</title>
+<input type=image alt="foo" src="http://f:fifty-two/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-newline-novalid.html
new file mode 100644
index 000000000..51e6c7358
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-newline</title>
+<input type=image alt="foo" src="http://f:
+/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-single-letter-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-single-letter-novalid.html
new file mode 100644
index 000000000..007ec33d1
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-single-letter-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-single-letter</title>
+<input type=image alt="foo" src="http://f:b/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-space-novalid.html
new file mode 100644
index 000000000..4086ace7a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-space</title>
+<input type=image alt="foo" src="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-tab-novalid.html
new file mode 100644
index 000000000..90faa3007
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/port-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: port-tab</title>
+<input type=image alt="foo" src="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/query-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/query-leading-space-novalid.html
new file mode 100644
index 000000000..183e1fad8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/query-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: query-leading-space</title>
+<input type=image alt="foo" src="http://f:21/b? d">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/query-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/query-trailing-space-novalid.html
new file mode 100644
index 000000000..a64a7c6b7
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/query-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: query-trailing-space</title>
+<input type=image alt="foo" src="http://f:21/b?d #">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-data-contains-fragment-haswarn.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-data-contains-fragment-haswarn.html
new file mode 100644
index 000000000..71b9a8873
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="data:text/html,test#test">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-data-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-data-single-slash-novalid.html
new file mode 100644
index 000000000..a2b5d1f86
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="data:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-file-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-file-backslash-novalid.html
new file mode 100644
index 000000000..0a1b8fb52
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-file-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-file-backslash</title>
+<input type=image alt="foo" src="file:c:\foo\bar.html">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-file-single-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-file-single-slash-c-bar-novalid.html
new file mode 100644
index 000000000..ee896fe55
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="file:/C|/foo/bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-file-triple-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-file-triple-slash-c-bar-novalid.html
new file mode 100644
index 000000000..8cb7521e8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="file:///C|/foo/bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-ftp-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-ftp-no-slash-novalid.html
new file mode 100644
index 000000000..bd109af80
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="ftp:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-ftp-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-ftp-single-slash-novalid.html
new file mode 100644
index 000000000..d892ac52d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="ftp:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-backslash-novalid.html
new file mode 100644
index 000000000..6fafed4ab
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-http-backslash</title>
+<input type=image alt="foo" src="http:\\foo.com\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-no-slash-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-no-slash-colon-novalid.html
new file mode 100644
index 000000000..90a1212ac
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http::@c:29">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-no-slash-novalid.html
new file mode 100644
index 000000000..e2c684aac
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http:foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-no-slash-square-bracket-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-no-slash-square-bracket-novalid.html
new file mode 100644
index 000000000..7a64662c8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http:[61:27]/:foo">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-http-single-slash-novalid.html
new file mode 100644
index 000000000..cdfd4d74c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-https-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-https-no-slash-novalid.html
new file mode 100644
index 000000000..d6b2bce56
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="https:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-https-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-https-single-slash-novalid.html
new file mode 100644
index 000000000..301281c14
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="https:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-javascript-no-slash-malformed-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-javascript-no-slash-malformed-novalid.html
new file mode 100644
index 000000000..f22ebf502
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="javascript:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-cr-novalid.html
new file mode 100644
index 000000000..2cef8164e
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-trailing-cr</title>
+<input type=image alt="foo" src="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-newline-novalid.html
new file mode 100644
index 000000000..1cac5852c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-trailing-newline</title>
+<input type=image alt="foo" src="a:
+foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-space-novalid.html
new file mode 100644
index 000000000..8b8f11fa2
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-trailing-space</title>
+<input type=image alt="foo" src="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-tab-novalid.html
new file mode 100644
index 000000000..6f5772f6b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/scheme-trailing-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: scheme-trailing-tab</title>
+<input type=image alt="foo" src="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-backslash-novalid.html
new file mode 100644
index 000000000..85b04e06b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid src: userinfo-backslash</title>
+<input type=image alt="foo" src="http://a\b:c\d@foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-password-bad-chars-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-password-bad-chars-novalid.html
new file mode 100644
index 000000000..4b3ef3426
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://&a:foo(b]c@d:2/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-password-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-password-contains-pile-of-poo-novalid.html
new file mode 100644
index 000000000..2b86aa332
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://foo:💩@example.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-username-contains-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-username-contains-at-sign-novalid.html
new file mode 100644
index 000000000..bdaf3479f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://::@c@d:2">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-username-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-src/userinfo-username-contains-pile-of-poo-novalid.html
new file mode 100644
index 000000000..32627a1f3
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-image-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>
+<input type=image alt="foo" src="http://💩:foo@example.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-empty-novalid.html
new file mode 100644
index 000000000..ae291ca35
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>empty formaction is not valid</title>
+<input type=submit formaction="">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-isvalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-isvalid.html
new file mode 100644
index 000000000..332b92065
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-isvalid.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>valid formaction</title>
+<input type=submit formaction="file:///"><!-- scheme-file-slash-slash-slash-only -->
+<input type=submit formaction="http://a:@www.example.com"><!-- userinfo-password-empty -->
+<input type=submit formaction="foo://///////"><!-- scheme-private-path-leading-slashes-only -->
+<input type=submit formaction="file://abc|/foo/bar"><!-- scheme-file-slash-slash-abc-bar -->
+<input type=submit formaction="/a/b/c"><!-- path-simple-relative -->
+<input type=submit formaction="http://example.com/你好你好"><!-- path-unicode-han -->
+<input type=submit formaction="/a/%2f/c"><!-- path-percent-encoded-slash-plus-slashes-relative -->
+<input type=submit formaction="http://f:/c"><!-- port-none-but-colon -->
+<input type=submit formaction="http://example.com/foo%41%7a"><!-- path-percent-encoded-multiple -->
+<input type=submit formaction="http://192.168.0.257/"><!-- host-IP-address-broken -->
+<input type=submit formaction="madeupscheme:example.com/"><!-- scheme-private-no-slash -->
+<input type=submit formaction="?"><!-- query-empty-no-path-relative -->
+<input type=submit formaction="http://example.com/%20foo"><!-- path-percent-encoded-space -->
+<input type=submit formaction="mailto:/example.com/"><!-- scheme-mailto-single-slash -->
+<input type=submit formaction="::"><!-- path-leading-colon-colon-relative -->
+<input type=submit formaction="http://example.com/%3A%3a%3C%3c"><!-- path-percent-encoded-mixed-case -->
+<input type=submit formaction="http://user:pass@foo:21/bar;par?b#c"><!-- userinfo -->
+<input type=submit formaction="ws:/example.com/"><!-- scheme-ws-single-slash -->
+<input type=submit formaction="foo://"><!-- scheme-private-slash-slash -->
+<input type=submit formaction="#"><!-- fragment-empty-hash-only-no-path-relative -->
+<input type=submit formaction="http://f:00000000000000/c"><!-- port-00000000000000 -->
+<input type=submit formaction="foo:////://///"><!-- scheme-private-path-leading-slashes-colon-slashes -->
+<input type=submit formaction=":23"><!-- path-leading-colon-number-relative -->
+<input type=submit formaction="foo:/"><!-- scheme-private-slash -->
+<input type=submit formaction="http://💩"><!-- host-is-pile-of-poo -->
+<input type=submit formaction="file:test"><!-- scheme-file-no-slash -->
+<input type=submit formaction="file://C|/foo/bar"><!-- scheme-file-slash-slash-c-bar -->
+<input type=submit formaction="#/"><!-- fragment-slash-relative -->
+<input type=submit formaction="http://192.0x00A80001"><!-- host-192.0x00A80001 -->
+<input type=submit formaction="foo.com"><!-- scheme-none-relative -->
+<input type=submit formaction="http💩//:foo"><!-- path-contains-pile-of-poo -->
+<input type=submit formaction="File://foo/bar.html"><!-- scheme-file-uppercase -->
+<input type=submit formaction=":/"><!-- path-leading-colon-slash-relative -->
+<input type=submit formaction="http://www.foo。bar.com"><!-- host-exotic-dot -->
+<input type=submit formaction="http://GOO​⁠goo.com"><!-- host-exotic-whitespace -->
+<input type=submit formaction="file:///foo/bar.txt"><!-- scheme-file-host-empty -->
+<input type=submit formaction="javascript:/example.com/"><!-- scheme-javascript-single-slash -->
+<input type=submit formaction="gopher:/example.com/"><!-- scheme-gopher-single-slash -->
+<input type=submit formaction="ftps:example.com/"><!-- scheme-ftps-no-slash -->
+<input type=submit formaction="file://server/foo/bar"><!-- scheme-file-host-included -->
+<input type=submit formaction="http://example.com/foo%00"><!-- path-percent-encoded-u0000 -->
+<input type=submit formaction="a:foo.com"><!-- scheme-private -->
+<input type=submit formaction=":"><!-- path-colon-relative -->
+<input type=submit formaction="http://:b@www.example.com"><!-- userinfo-user-empty -->
+<input type=submit formaction="file:/"><!-- scheme-file-slash-only -->
+<input type=submit formaction="wss:example.com/"><!-- scheme-wss-no-slash -->
+<input type=submit formaction="::23"><!-- path-colon-colon-number-relative -->
+<input type=submit formaction="/a%2fc"><!-- path-percent-encoded-slash-relative -->
+<input type=submit formaction="http://a:b@c:29/d"><!-- userinfo-host-port-path -->
+<input type=submit formaction="gopher:example.com/"><!-- scheme-gopher-no-slash -->
+<input type=submit formaction="madeupscheme:/example.com/"><!-- scheme-private-single-slash -->
+<input type=submit formaction="mailto:example.com/"><!-- scheme-mailto-no-slash -->
+<input type=submit formaction="http://%25DOMAIN:foobar@foodomain.com"><!-- userinfo-username-contains-percent-encoded -->
+<input type=submit formaction="/:23"><!-- path-slash-colon-number-relative -->
+<input type=submit formaction="foo://///////bar.com/"><!-- scheme-private-path-leading-slashes-chars -->
+<input type=submit formaction="http://[2001::1]:80"><!-- host-ipv6-port -->
+<input type=submit formaction="data:text/plain,foo"><!-- scheme-data-no-slash -->
+<input type=submit formaction="http://example.com/foo/%2e"><!-- path-percent-encoded-dot -->
+<input type=submit formaction="file:/example.com/"><!-- scheme-file-single-slash -->
+<input type=submit formaction="http://example.com/©zbar"><!-- path-non-ascii -->
+<input type=submit formaction="http://example.com//foo"><!-- path-uFEFF -->
+<input type=submit formaction="wss:/example.com/"><!-- scheme-wss-single-slash -->
+<input type=submit formaction="http://foo/abcd#foo?bar"><!-- fragment-contains-question-mark -->
+<input type=submit formaction=":#"><!-- path-leading-colon-hash-relative -->
+<input type=submit formaction="http://example.com/foo%91"><!-- path-percent-encoded-u0091 -->
+<input type=submit formaction="c:/foo"><!-- scheme-private-single-letter -->
+<input type=submit formaction=":foo.com"><!-- path-leading-colon-chars-relative -->
+<input type=submit formaction="http://你好你好"><!-- host-idn-unicode-han -->
+<input type=submit formaction="http://example.com/foo#💩"><!-- fragment-contains-pile-of-poo -->
+<input type=submit formaction="file:"><!-- scheme-file-scheme-only -->
+<input type=submit formaction="#β"><!-- fragment-non-ascii-relative -->
+<input type=submit formaction="foo:/bar.com/"><!-- scheme-private-path -->
+<input type=submit formaction="http://f:0/c"><!-- port-0 -->
+<input type=submit formaction="#;?"><!-- fragment-semicolon-question-mark-relative -->
+<input type=submit formaction="http://Go.com"><!-- host-fullwidth -->
+<input type=submit formaction="http://@www.example.com"><!-- userinfo-empty -->
+<input type=submit formaction="http://example.com/‮/foo/‭/bar"><!-- path-u202E-u202D -->
+<input type=submit formaction="http://[2001::1]"><!-- host-ipv6 -->
+<input type=submit formaction="💩http://foo"><!-- path-starts-with-pile-of-poo -->
+<input type=submit formaction="http://foo/abcd?efgh?ijkl"><!-- query-contains-question-mark -->
+<input type=submit formaction="//foo/bar"><!-- scheme-schemeless-relative -->
+<input type=submit formaction="ftps:/example.com/"><!-- scheme-ftps-single-slash -->
+<input type=submit formaction="http://foo.com:b@d/"><!-- userinfo-username-non-alpha -->
+<input type=submit formaction=":a"><!-- path-leading-colon-letter-relative -->
+<input type=submit formaction="/"><!-- path-slash-only-relative -->
+<input type=submit formaction="http://example.com/foo?💩"><!-- query-contains-pile-of-poo -->
+<input type=submit formaction="http://f:00000000000000000000080/c"><!-- port-00000000000000000000080 -->
+<input type=submit formaction="file://"><!-- scheme-file-slash-slash-only -->
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-whitespace-only-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-whitespace-only-novalid.html
new file mode 100644
index 000000000..6f2d34e8d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction-whitespace-only-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>empty formaction is not valid</title>
+<input type=submit formaction="
+">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-backslash-novalid.html
new file mode 100644
index 000000000..f425c3076
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: fragment-backslash</title>
+<input type=submit formaction="#\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-contains-hash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-contains-hash-novalid.html
new file mode 100644
index 000000000..074b066b9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-contains-hash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: fragment-contains-hash</title>
+<input type=submit formaction="http://foo/path#f#g">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-leading-space-novalid.html
new file mode 100644
index 000000000..370bc0d8b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/fragment-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: fragment-leading-space</title>
+<input type=submit formaction="http://f:21/b# e">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-cr-novalid.html
new file mode 100644
index 000000000..30c67fdf9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-cr</title>
+<input type=submit formaction="http://example. org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-double-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-double-percent-encoded-novalid.html
new file mode 100644
index 000000000..b6bcab6dc
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-double-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-double-percent-encoded</title>
+<input type=submit formaction="http://%41.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-double-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-double-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 000000000..b25b38948
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-double-percent-encoded-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-double-percent-encoded-percent-encoded</title>
+<input type=submit formaction="http://%ef%bc%85%ef%bc%94%ef%bc%91.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-novalid.html
new file mode 100644
index 000000000..7f0bff475
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-empty</title>
+<input type=submit formaction="http://">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-userinfo-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-userinfo-empty-novalid.html
new file mode 100644
index 000000000..548576d6f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-userinfo-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-empty-userinfo-empty</title>
+<input type=submit formaction="http://@/www.example.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-with-userinfo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-with-userinfo-novalid.html
new file mode 100644
index 000000000..fc22cd194
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-empty-with-userinfo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-empty-with-userinfo</title>
+<input type=submit formaction="http://user:pass@/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-hostname-in-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-hostname-in-brackets-novalid.html
new file mode 100644
index 000000000..6b714a213
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-hostname-in-brackets-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-hostname-in-brackets</title>
+<input type=submit formaction="http://[www.google.com]/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-invalid-unicode-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-invalid-unicode-novalid.html
new file mode 100644
index 000000000..f9e490b15
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-invalid-unicode-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-invalid-unicode</title>
+<input type=submit formaction="http://﷐zyx.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-invalid-unicode-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-invalid-unicode-percent-encoded-novalid.html
new file mode 100644
index 000000000..8bd4fa53b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-invalid-unicode-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-invalid-unicode-percent-encoded</title>
+<input type=submit formaction="http://%ef%b7%90zyx.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-newline-novalid.html
new file mode 100644
index 000000000..4bf316083
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-newline</title>
+<input type=submit formaction="http://example.
+org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-space-novalid.html
new file mode 100644
index 000000000..40d1b5e1b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-space</title>
+<input type=submit formaction="http://example .org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-square-brackets-port-contains-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-square-brackets-port-contains-colon-novalid.html
new file mode 100644
index 000000000..b58d8edfb
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-square-brackets-port-contains-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-square-brackets-port-contains-colon</title>
+<input type=submit formaction="http://[1::2]:3:4">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-tab-novalid.html
new file mode 100644
index 000000000..1f0818c83
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-tab</title>
+<input type=submit formaction="http://example .org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-u0000-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-u0000-percent-encoded-novalid.html
new file mode 100644
index 000000000..38d6adf05
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-u0000-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-u0000-percent-encoded</title>
+<input type=submit formaction="http://%00.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-u0000-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-u0000-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 000000000..d4628743d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/host-u0000-percent-encoded-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: host-u0000-percent-encoded-percent-encoded</title>
+<input type=submit formaction="http://%ef%bc%85%ef%bc%90%ef%bc%90.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-bare-percent-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-bare-percent-sign-novalid.html
new file mode 100644
index 000000000..507dd282c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-bare-percent-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-bare-percent-sign</title>
+<input type=submit formaction="http://example.com/foo%">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-contains-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-contains-space-novalid.html
new file mode 100644
index 000000000..41b102730
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-contains-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-contains-space</title>
+<input type=submit formaction="/a/ /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-backslash-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-backslash-at-sign-novalid.html
new file mode 100644
index 000000000..5bc0f540f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-backslash-at-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-leading-backslash-at-sign</title>
+<input type=submit formaction="http://foo.com/\@">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-colon-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-colon-backslash-novalid.html
new file mode 100644
index 000000000..9f96f0752
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-colon-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-leading-colon-backslash</title>
+<input type=submit formaction=":\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-colon-chars-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-colon-chars-backslash-novalid.html
new file mode 100644
index 000000000..a6d07f612
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-colon-chars-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-leading-colon-chars-backslash</title>
+<input type=submit formaction=":foo.com\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-space-novalid.html
new file mode 100644
index 000000000..2906aa3ac
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-leading-space</title>
+<input type=submit formaction="http://f:21/ b">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-percent-encoded-malformed-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-percent-encoded-malformed-novalid.html
new file mode 100644
index 000000000..955bd05ab
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-percent-encoded-malformed-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-percent-encoded-malformed</title>
+<input type=submit formaction="http://example.com/foo/%2e%2">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-relative-square-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-relative-square-brackets-novalid.html
new file mode 100644
index 000000000..3bc8dbf2d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-relative-square-brackets-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-relative-square-brackets</title>
+<input type=submit formaction="[61:24:74]:98">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-tab-novalid.html
new file mode 100644
index 000000000..e424a2a23
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-tab</title>
+<input type=submit formaction="http://example.com/foo bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-trailing-space-novalid.html
new file mode 100644
index 000000000..d61566d29
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-trailing-space</title>
+<input type=submit formaction="http://f:21/b ?">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-u0091-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-u0091-novalid.html
new file mode 100644
index 000000000..d9c5c0bdd
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/path-u0091-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: path-u0091</title>
+<input type=submit formaction="http://example.com/foo‘">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-999999-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-999999-novalid.html
new file mode 100644
index 000000000..56fed6806
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-999999-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-999999</title>
+<input type=submit formaction="http://f:999999/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-cr-novalid.html
new file mode 100644
index 000000000..bcacfa8b8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-cr</title>
+<input type=submit formaction="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-colon-bracket-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-colon-bracket-colon-novalid.html
new file mode 100644
index 000000000..02caabe38
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-colon-bracket-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-leading-colon-bracket-colon</title>
+<input type=submit formaction="http://2001::1]:80">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-colon-novalid.html
new file mode 100644
index 000000000..1222d48fe
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-leading-colon</title>
+<input type=submit formaction="http://2001::1">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-dash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-dash-novalid.html
new file mode 100644
index 000000000..eea1fb9fe
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-leading-dash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-leading-dash</title>
+<input type=submit formaction="http://foo:-80/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-multiple-letters-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-multiple-letters-novalid.html
new file mode 100644
index 000000000..575f7b156
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-multiple-letters-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-multiple-letters</title>
+<input type=submit formaction="http://f:fifty-two/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-newline-novalid.html
new file mode 100644
index 000000000..77281c7f2
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-newline</title>
+<input type=submit formaction="http://f:
+/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-single-letter-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-single-letter-novalid.html
new file mode 100644
index 000000000..231f88659
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-single-letter-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-single-letter</title>
+<input type=submit formaction="http://f:b/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-space-novalid.html
new file mode 100644
index 000000000..df250d3cb
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-space</title>
+<input type=submit formaction="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-tab-novalid.html
new file mode 100644
index 000000000..7e817369d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/port-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: port-tab</title>
+<input type=submit formaction="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/query-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/query-leading-space-novalid.html
new file mode 100644
index 000000000..9bdcfa9ce
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/query-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: query-leading-space</title>
+<input type=submit formaction="http://f:21/b? d">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/query-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/query-trailing-space-novalid.html
new file mode 100644
index 000000000..094f5008d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/query-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: query-trailing-space</title>
+<input type=submit formaction="http://f:21/b?d #">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-data-contains-fragment-haswarn.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-data-contains-fragment-haswarn.html
new file mode 100644
index 000000000..4677df893
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-data-contains-fragment-haswarn.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>formaction warning: scheme-data-contains-fragment</title>
+<input type=submit formaction="data:text/html,test#test">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-data-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-data-single-slash-novalid.html
new file mode 100644
index 000000000..ae851bea5
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-data-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-data-single-slash</title>
+<input type=submit formaction="data:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-backslash-novalid.html
new file mode 100644
index 000000000..22600d617
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-file-backslash</title>
+<input type=submit formaction="file:c:\foo\bar.html">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-single-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-single-slash-c-bar-novalid.html
new file mode 100644
index 000000000..05c18e646
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-single-slash-c-bar-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-file-single-slash-c-bar</title>
+<input type=submit formaction="file:/C|/foo/bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-triple-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-triple-slash-c-bar-novalid.html
new file mode 100644
index 000000000..f15f3083d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-file-triple-slash-c-bar-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-file-triple-slash-c-bar</title>
+<input type=submit formaction="file:///C|/foo/bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-ftp-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-ftp-no-slash-novalid.html
new file mode 100644
index 000000000..f4d95347d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-ftp-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-ftp-no-slash</title>
+<input type=submit formaction="ftp:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-ftp-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-ftp-single-slash-novalid.html
new file mode 100644
index 000000000..40314614e
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-ftp-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-ftp-single-slash</title>
+<input type=submit formaction="ftp:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-backslash-novalid.html
new file mode 100644
index 000000000..a29e4fa97
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-http-backslash</title>
+<input type=submit formaction="http:\\foo.com\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-colon-novalid.html
new file mode 100644
index 000000000..5350ea0a9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-http-no-slash-colon</title>
+<input type=submit formaction="http::@c:29">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-novalid.html
new file mode 100644
index 000000000..c7f227eab
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-http-no-slash</title>
+<input type=submit formaction="http:foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-square-bracket-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-square-bracket-novalid.html
new file mode 100644
index 000000000..3d66391cd
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-no-slash-square-bracket-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-http-no-slash-square-bracket</title>
+<input type=submit formaction="http:[61:27]/:foo">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-single-slash-novalid.html
new file mode 100644
index 000000000..6c69f2789
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-http-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-http-single-slash</title>
+<input type=submit formaction="http:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-https-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-https-no-slash-novalid.html
new file mode 100644
index 000000000..6c15ad999
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-https-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-https-no-slash</title>
+<input type=submit formaction="https:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-https-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-https-single-slash-novalid.html
new file mode 100644
index 000000000..27e668c97
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-https-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-https-single-slash</title>
+<input type=submit formaction="https:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-javascript-no-slash-malformed-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-javascript-no-slash-malformed-novalid.html
new file mode 100644
index 000000000..fe2c0ce71
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-javascript-no-slash-malformed-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-javascript-no-slash-malformed</title>
+<input type=submit formaction="javascript:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-cr-novalid.html
new file mode 100644
index 000000000..3ab19fffd
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-trailing-cr</title>
+<input type=submit formaction="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-newline-novalid.html
new file mode 100644
index 000000000..eba43de91
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-trailing-newline</title>
+<input type=submit formaction="a:
+foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-space-novalid.html
new file mode 100644
index 000000000..e0d62b36f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-trailing-space</title>
+<input type=submit formaction="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-tab-novalid.html
new file mode 100644
index 000000000..4b75ff2e7
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/scheme-trailing-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: scheme-trailing-tab</title>
+<input type=submit formaction="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-backslash-novalid.html
new file mode 100644
index 000000000..56f8a0b7d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: userinfo-backslash</title>
+<input type=submit formaction="http://a\b:c\d@foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-password-bad-chars-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-password-bad-chars-novalid.html
new file mode 100644
index 000000000..d005f35cb
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-password-bad-chars-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: userinfo-password-bad-chars</title>
+<input type=submit formaction="http://&a:foo(b]c@d:2/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-password-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-password-contains-pile-of-poo-novalid.html
new file mode 100644
index 000000000..eba2430b5
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-password-contains-pile-of-poo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: userinfo-password-contains-pile-of-poo</title>
+<input type=submit formaction="http://foo:💩@example.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-username-contains-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-username-contains-at-sign-novalid.html
new file mode 100644
index 000000000..060f63c16
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-username-contains-at-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: userinfo-username-contains-at-sign</title>
+<input type=submit formaction="http://::@c@d:2">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-username-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-username-contains-pile-of-poo-novalid.html
new file mode 100644
index 000000000..5e528bff8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-submit-formaction/userinfo-username-contains-pile-of-poo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid formaction: userinfo-username-contains-pile-of-poo</title>
+<input type=submit formaction="http://💩:foo@example.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value-empty-isvalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value-empty-isvalid.html
new file mode 100644
index 000000000..229b7a2b9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value-empty-isvalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>empty value attribute is valid</title>
+<input type=url value="">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value-isvalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value-isvalid.html
new file mode 100644
index 000000000..93f5eb5cc
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value-isvalid.html
@@ -0,0 +1,70 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>valid value attribute</title>
+<input type=url value="file:///"><!-- scheme-file-slash-slash-slash-only -->
+<input type=url value="http://a:@www.example.com"><!-- userinfo-password-empty -->
+<input type=url value="foo://///////"><!-- scheme-private-path-leading-slashes-only -->
+<input type=url value="file://abc|/foo/bar"><!-- scheme-file-slash-slash-abc-bar -->
+<input type=url value="http://example.com/foo#💩"><!-- fragment-contains-pile-of-poo -->
+<input type=url value="http://example.com/你好你好"><!-- path-unicode-han -->
+<input type=url value="http://f:/c"><!-- port-none-but-colon -->
+<input type=url value="http://example.com/foo%41%7a"><!-- path-percent-encoded-multiple -->
+<input type=url value="http://192.168.0.257/"><!-- host-IP-address-broken -->
+<input type=url value="madeupscheme:example.com/"><!-- scheme-private-no-slash -->
+<input type=url value="http://example.com/%20foo"><!-- path-percent-encoded-space -->
+<input type=url value="http://%25DOMAIN:foobar@foodomain.com"><!-- userinfo-username-contains-percent-encoded -->
+<input type=url value="http://你好你好"><!-- host-idn-unicode-han -->
+<input type=url value="http://example.com/%3A%3a%3C%3c"><!-- path-percent-encoded-mixed-case -->
+<input type=url value="http://user:pass@foo:21/bar;par?b#c"><!-- userinfo -->
+<input type=url value="ws:/example.com/"><!-- scheme-ws-single-slash -->
+<input type=url value="foo://"><!-- scheme-private-slash-slash -->
+<input type=url value="http://f:00000000000000/c"><!-- port-00000000000000 -->
+<input type=url value="foo:////://///"><!-- scheme-private-path-leading-slashes-colon-slashes -->
+<input type=url value="foo:/"><!-- scheme-private-slash -->
+<input type=url value="http://💩"><!-- host-is-pile-of-poo -->
+<input type=url value="file:test"><!-- scheme-file-no-slash -->
+<input type=url value="file://C|/foo/bar"><!-- scheme-file-slash-slash-c-bar -->
+<input type=url value="http://192.0x00A80001"><!-- host-192.0x00A80001 -->
+<input type=url value="http://example.com/foo/💩"><!-- path-contains-pile-of-poo -->
+<input type=url value="File://foo/bar.html"><!-- scheme-file-uppercase -->
+<input type=url value="http://www.foo。bar.com"><!-- host-exotic-dot -->
+<input type=url value="http://GOO​⁠goo.com"><!-- host-exotic-whitespace -->
+<input type=url value="file:///foo/bar.txt"><!-- scheme-file-host-empty -->
+<input type=url value="javascript:/example.com/"><!-- scheme-javascript-single-slash -->
+<input type=url value="gopher:/example.com/"><!-- scheme-gopher-single-slash -->
+<input type=url value="ftps:example.com/"><!-- scheme-ftps-no-slash -->
+<input type=url value="file://server/foo/bar"><!-- scheme-file-host-included -->
+<input type=url value="http://foo/abcd#foo?bar"><!-- fragment-contains-question-mark -->
+<input type=url value="a:foo.com"><!-- scheme-private -->
+<input type=url value="http://:b@www.example.com"><!-- userinfo-user-empty -->
+<input type=url value="file:/"><!-- scheme-file-slash-only -->
+<input type=url value="madeupscheme:/example.com/"><!-- scheme-private-single-slash -->
+<input type=url value="http://a:b@c:29/d"><!-- userinfo-host-port-path -->
+<input type=url value="gopher:example.com/"><!-- scheme-gopher-no-slash -->
+<input type=url value="mailto:example.com/"><!-- scheme-mailto-no-slash -->
+<input type=url value="mailto:/example.com/"><!-- scheme-mailto-single-slash -->
+<input type=url value="foo://///////bar.com/"><!-- scheme-private-path-leading-slashes-chars -->
+<input type=url value="http://[2001::1]:80"><!-- host-ipv6-port -->
+<input type=url value="http://example.com/foo/%2e"><!-- path-percent-encoded-dot -->
+<input type=url value="file:/example.com/"><!-- scheme-file-single-slash -->
+<input type=url value="http://example.com/©zbar"><!-- path-non-ascii -->
+<input type=url value="http://example.com//foo"><!-- path-uFEFF -->
+<input type=url value="wss:/example.com/"><!-- scheme-wss-single-slash -->
+<input type=url value="http://example.com/foo%00"><!-- path-percent-encoded-u0000 -->
+<input type=url value="http://example.com/foo%91"><!-- path-percent-encoded-u0091 -->
+<input type=url value="c:/foo"><!-- scheme-private-single-letter -->
+<input type=url value="wss:example.com/"><!-- scheme-wss-no-slash -->
+<input type=url value="http://foo/abcd?efgh?ijkl"><!-- query-contains-question-mark -->
+<input type=url value="file:"><!-- scheme-file-scheme-only -->
+<input type=url value="foo:/bar.com/"><!-- scheme-private-path -->
+<input type=url value="http://f:0/c"><!-- port-0 -->
+<input type=url value="http://Go.com"><!-- host-fullwidth -->
+<input type=url value="http://@www.example.com"><!-- userinfo-empty -->
+<input type=url value="http://example.com/‮/foo/‭/bar"><!-- path-u202E-u202D -->
+<input type=url value="http://[2001::1]"><!-- host-ipv6 -->
+<input type=url value="ftps:/example.com/"><!-- scheme-ftps-single-slash -->
+<input type=url value="http://foo.com:b@d/"><!-- userinfo-username-non-alpha -->
+<input type=url value="data:text/plain,foo"><!-- scheme-data-no-slash -->
+<input type=url value="http://example.com/foo?💩"><!-- query-contains-pile-of-poo -->
+<input type=url value="http://f:00000000000000000000080/c"><!-- port-00000000000000000000080 -->
+<input type=url value="file://"><!-- scheme-file-slash-slash-only -->
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-backslash-novalid.html
new file mode 100644
index 000000000..0f194d586
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: fragment-backslash</title>
+<input type=url value="#\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-contains-hash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-contains-hash-novalid.html
new file mode 100644
index 000000000..aae446c35
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-contains-hash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: fragment-contains-hash</title>
+<input type=url value="http://foo/path#f#g">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-empty-hash-only-no-path-relative-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-empty-hash-only-no-path-relative-novalid.html
new file mode 100644
index 000000000..afb742bdd
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-empty-hash-only-no-path-relative-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: fragment-empty-hash-only-no-path-relative</title>
+<input type=url value="#">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-leading-space-novalid.html
new file mode 100644
index 000000000..58535e9c9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: fragment-leading-space</title>
+<input type=url value="http://f:21/b# e">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-non-ascii-relative-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-non-ascii-relative-novalid.html
new file mode 100644
index 000000000..ad41f427b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-non-ascii-relative-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: fragment-non-ascii-relative</title>
+<input type=url value="#β">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-semicolon-question-mark-relative-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-semicolon-question-mark-relative-novalid.html
new file mode 100644
index 000000000..1bfc99cc9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-semicolon-question-mark-relative-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: fragment-semicolon-question-mark-relative</title>
+<input type=url value="#;?">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-slash-relative-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-slash-relative-novalid.html
new file mode 100644
index 000000000..ccbfa4c2f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/fragment-slash-relative-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: fragment-slash-relative</title>
+<input type=url value="#/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-cr-novalid.html
new file mode 100644
index 000000000..b47e6fc5f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-cr</title>
+<input type=url value="http://example. org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-double-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-double-percent-encoded-novalid.html
new file mode 100644
index 000000000..f8e96bc44
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-double-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-double-percent-encoded</title>
+<input type=url value="http://%41.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-double-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-double-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 000000000..392c783d0
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-double-percent-encoded-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-double-percent-encoded-percent-encoded</title>
+<input type=url value="http://%ef%bc%85%ef%bc%94%ef%bc%91.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-novalid.html
new file mode 100644
index 000000000..d56b619ca
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-empty</title>
+<input type=url value="http://">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-userinfo-empty-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-userinfo-empty-novalid.html
new file mode 100644
index 000000000..2ac3f54f4
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-userinfo-empty-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-empty-userinfo-empty</title>
+<input type=url value="http://@/www.example.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-with-userinfo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-with-userinfo-novalid.html
new file mode 100644
index 000000000..7976c1717
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-empty-with-userinfo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-empty-with-userinfo</title>
+<input type=url value="http://user:pass@/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-hostname-in-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-hostname-in-brackets-novalid.html
new file mode 100644
index 000000000..d4e59450b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-hostname-in-brackets-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-hostname-in-brackets</title>
+<input type=url value="http://[www.google.com]/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-invalid-unicode-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-invalid-unicode-novalid.html
new file mode 100644
index 000000000..f18867cc9
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-invalid-unicode-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-invalid-unicode</title>
+<input type=url value="http://﷐zyx.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-invalid-unicode-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-invalid-unicode-percent-encoded-novalid.html
new file mode 100644
index 000000000..073e1d9ed
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-invalid-unicode-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-invalid-unicode-percent-encoded</title>
+<input type=url value="http://%ef%b7%90zyx.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-newline-novalid.html
new file mode 100644
index 000000000..01a2a7719
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-newline</title>
+<input type=url value="http://example.
+org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-space-novalid.html
new file mode 100644
index 000000000..95883e289
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-space</title>
+<input type=url value="http://example .org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-square-brackets-port-contains-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-square-brackets-port-contains-colon-novalid.html
new file mode 100644
index 000000000..eb0b0a23c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-square-brackets-port-contains-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-square-brackets-port-contains-colon</title>
+<input type=url value="http://[1::2]:3:4">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-tab-novalid.html
new file mode 100644
index 000000000..e6be4953e
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-tab</title>
+<input type=url value="http://example .org">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-u0000-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-u0000-percent-encoded-novalid.html
new file mode 100644
index 000000000..c2460b040
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-u0000-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-u0000-percent-encoded</title>
+<input type=url value="http://%00.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-u0000-percent-encoded-percent-encoded-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-u0000-percent-encoded-percent-encoded-novalid.html
new file mode 100644
index 000000000..905b48383
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/host-u0000-percent-encoded-percent-encoded-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: host-u0000-percent-encoded-percent-encoded</title>
+<input type=url value="http://%ef%bc%85%ef%bc%90%ef%bc%90.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-bare-percent-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-bare-percent-sign-novalid.html
new file mode 100644
index 000000000..f409db5a0
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-bare-percent-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-bare-percent-sign</title>
+<input type=url value="http://example.com/foo%">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-contains-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-contains-space-novalid.html
new file mode 100644
index 000000000..29e3eddf0
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-contains-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-contains-space</title>
+<input type=url value="/a/ /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-backslash-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-backslash-at-sign-novalid.html
new file mode 100644
index 000000000..8ce609a66
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-backslash-at-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-leading-backslash-at-sign</title>
+<input type=url value="http://foo.com/\@">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-colon-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-colon-backslash-novalid.html
new file mode 100644
index 000000000..10c69106a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-colon-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-leading-colon-backslash</title>
+<input type=url value=":\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-colon-chars-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-colon-chars-backslash-novalid.html
new file mode 100644
index 000000000..b3f22fe4a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-colon-chars-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-leading-colon-chars-backslash</title>
+<input type=url value=":foo.com\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-space-novalid.html
new file mode 100644
index 000000000..657fd16e3
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-leading-space</title>
+<input type=url value="http://f:21/ b">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-malformed-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-malformed-novalid.html
new file mode 100644
index 000000000..cc232af68
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-malformed-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-percent-encoded-malformed</title>
+<input type=url value="http://example.com/foo/%2e%2">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-slash-plus-slashes-relative-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-slash-plus-slashes-relative-novalid.html
new file mode 100644
index 000000000..c717ac0ea
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-slash-plus-slashes-relative-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-percent-encoded-slash-plus-slashes-relative</title>
+<input type=url value="/a/%2f/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-slash-relative-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-slash-relative-novalid.html
new file mode 100644
index 000000000..a61bdcb5b
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-percent-encoded-slash-relative-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-percent-encoded-slash-relative</title>
+<input type=url value="/a%2fc">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-relative-square-brackets-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-relative-square-brackets-novalid.html
new file mode 100644
index 000000000..f9265b7bb
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-relative-square-brackets-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-relative-square-brackets</title>
+<input type=url value="[61:24:74]:98">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-simple-relative-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-simple-relative-novalid.html
new file mode 100644
index 000000000..6eb803b79
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-simple-relative-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-simple-relative</title>
+<input type=url value="/a/b/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-slash-only-relative-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-slash-only-relative-novalid.html
new file mode 100644
index 000000000..8fb0efcb4
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-slash-only-relative-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-slash-only-relative</title>
+<input type=url value="/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-tab-novalid.html
new file mode 100644
index 000000000..2d70b76f7
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-tab</title>
+<input type=url value="http://example.com/foo bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-trailing-space-novalid.html
new file mode 100644
index 000000000..8a5b79123
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-trailing-space</title>
+<input type=url value="http://f:21/b ?">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-u0091-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-u0091-novalid.html
new file mode 100644
index 000000000..ed3ec7f0a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/path-u0091-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: path-u0091</title>
+<input type=url value="http://example.com/foo‘">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-999999-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-999999-novalid.html
new file mode 100644
index 000000000..9ea67f378
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-999999-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: port-999999</title>
+<input type=url value="http://f:999999/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-cr-novalid.html
new file mode 100644
index 000000000..650968dfc
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: port-cr</title>
+<input type=url value="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-colon-bracket-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-colon-bracket-colon-novalid.html
new file mode 100644
index 000000000..d64939376
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-colon-bracket-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: port-leading-colon-bracket-colon</title>
+<input type=url value="http://2001::1]:80">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-colon-novalid.html
new file mode 100644
index 000000000..030e9d329
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: port-leading-colon</title>
+<input type=url value="http://2001::1">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-dash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-dash-novalid.html
new file mode 100644
index 000000000..9ceabb9bd
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-leading-dash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: port-leading-dash</title>
+<input type=url value="http://foo:-80/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-multiple-letters-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-multiple-letters-novalid.html
new file mode 100644
index 000000000..02df80f07
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-multiple-letters-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: port-multiple-letters</title>
+<input type=url value="http://f:fifty-two/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-newline-novalid.html
new file mode 100644
index 000000000..09c399998
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: port-newline</title>
+<input type=url value="http://f:
+/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-single-letter-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-single-letter-novalid.html
new file mode 100644
index 000000000..7b673eb22
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-single-letter-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: port-single-letter</title>
+<input type=url value="http://f:b/c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-space-novalid.html
new file mode 100644
index 000000000..cf8439b4d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: port-space</title>
+<input type=url value="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-tab-novalid.html
new file mode 100644
index 000000000..f05db6676
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/port-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: port-tab</title>
+<input type=url value="http://f: /c">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-empty-no-path-relative-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-empty-no-path-relative-novalid.html
new file mode 100644
index 000000000..9ade778db
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-empty-no-path-relative-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: query-empty-no-path-relative</title>
+<input type=url value="?">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-leading-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-leading-space-novalid.html
new file mode 100644
index 000000000..49196c94a
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-leading-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: query-leading-space</title>
+<input type=url value="http://f:21/b? d">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-trailing-space-novalid.html
new file mode 100644
index 000000000..a877bdf1d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/query-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: query-trailing-space</title>
+<input type=url value="http://f:21/b?d #">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-data-contains-fragment-haswarn.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-data-contains-fragment-haswarn.html
new file mode 100644
index 000000000..aa4204c11
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-data-contains-fragment-haswarn.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>value warning: scheme-data-contains-fragment</title>
+<input type=url value="data:text/html,test#test">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-data-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-data-single-slash-novalid.html
new file mode 100644
index 000000000..e1926f488
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-data-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-data-single-slash</title>
+<input type=url value="data:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-backslash-novalid.html
new file mode 100644
index 000000000..cb2823b84
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-file-backslash</title>
+<input type=url value="file:c:\foo\bar.html">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-single-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-single-slash-c-bar-novalid.html
new file mode 100644
index 000000000..4d3d662ba
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-single-slash-c-bar-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-file-single-slash-c-bar</title>
+<input type=url value="file:/C|/foo/bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-triple-slash-c-bar-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-triple-slash-c-bar-novalid.html
new file mode 100644
index 000000000..d0bf5325c
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-file-triple-slash-c-bar-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-file-triple-slash-c-bar</title>
+<input type=url value="file:///C|/foo/bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-ftp-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-ftp-no-slash-novalid.html
new file mode 100644
index 000000000..5fab853b6
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-ftp-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-ftp-no-slash</title>
+<input type=url value="ftp:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-ftp-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-ftp-single-slash-novalid.html
new file mode 100644
index 000000000..fc6fd7d13
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-ftp-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-ftp-single-slash</title>
+<input type=url value="ftp:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-backslash-novalid.html
new file mode 100644
index 000000000..1de549d93
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-http-backslash</title>
+<input type=url value="http:\\foo.com\">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-colon-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-colon-novalid.html
new file mode 100644
index 000000000..9bf960341
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-colon-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-http-no-slash-colon</title>
+<input type=url value="http::@c:29">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-novalid.html
new file mode 100644
index 000000000..41b939e02
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-http-no-slash</title>
+<input type=url value="http:foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-square-bracket-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-square-bracket-novalid.html
new file mode 100644
index 000000000..11004d954
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-no-slash-square-bracket-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-http-no-slash-square-bracket</title>
+<input type=url value="http:[61:27]/:foo">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-single-slash-novalid.html
new file mode 100644
index 000000000..f4fd88923
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-http-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-http-single-slash</title>
+<input type=url value="http:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-https-no-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-https-no-slash-novalid.html
new file mode 100644
index 000000000..b0b6ae6f4
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-https-no-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-https-no-slash</title>
+<input type=url value="https:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-https-single-slash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-https-single-slash-novalid.html
new file mode 100644
index 000000000..5de56191d
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-https-single-slash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-https-single-slash</title>
+<input type=url value="https:/example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-javascript-no-slash-malformed-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-javascript-no-slash-malformed-novalid.html
new file mode 100644
index 000000000..73c7e6adf
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-javascript-no-slash-malformed-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-javascript-no-slash-malformed</title>
+<input type=url value="javascript:example.com/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-schemeless-relative-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-schemeless-relative-novalid.html
new file mode 100644
index 000000000..f626dfe10
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-schemeless-relative-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-schemeless-relative</title>
+<input type=url value="//foo/bar">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-cr-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-cr-novalid.html
new file mode 100644
index 000000000..5731f372f
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-cr-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-trailing-cr</title>
+<input type=url value="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-newline-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-newline-novalid.html
new file mode 100644
index 000000000..428471ce6
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-newline-novalid.html
@@ -0,0 +1,5 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-trailing-newline</title>
+<input type=url value="a:
+foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-space-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-space-novalid.html
new file mode 100644
index 000000000..ea2ffe302
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-space-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-trailing-space</title>
+<input type=url value="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-tab-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-tab-novalid.html
new file mode 100644
index 000000000..40f77c7e8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/scheme-trailing-tab-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: scheme-trailing-tab</title>
+<input type=url value="a: foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-backslash-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-backslash-novalid.html
new file mode 100644
index 000000000..2c62de247
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-backslash-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: userinfo-backslash</title>
+<input type=url value="http://a\b:c\d@foo.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-password-bad-chars-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-password-bad-chars-novalid.html
new file mode 100644
index 000000000..00cbff7e8
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-password-bad-chars-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: userinfo-password-bad-chars</title>
+<input type=url value="http://&a:foo(b]c@d:2/">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-password-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-password-contains-pile-of-poo-novalid.html
new file mode 100644
index 000000000..2d43c8888
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-password-contains-pile-of-poo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: userinfo-password-contains-pile-of-poo</title>
+<input type=url value="http://foo:💩@example.com">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-username-contains-at-sign-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-username-contains-at-sign-novalid.html
new file mode 100644
index 000000000..4d88541aa
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-username-contains-at-sign-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: userinfo-username-contains-at-sign</title>
+<input type=url value="http://::@c@d:2">
diff --git a/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-username-contains-pile-of-poo-novalid.html b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-username-contains-pile-of-poo-novalid.html
new file mode 100644
index 000000000..a457fe6b4
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html/elements/input/type-url-value/userinfo-username-contains-pile-of-poo-novalid.html
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>invalid value attribute: userinfo-username-contains-pile-of-poo</title>
+<input type=url value="http://💩:foo@example.com">