feedtools 0.2.26 → 0.2.27

Sign up to get free protection for your applications and to get access to all the features.
Files changed (166) hide show
  1. data/CHANGELOG +232 -216
  2. data/db/migration.rb +2 -0
  3. data/db/schema.mysql.sql +2 -0
  4. data/db/schema.postgresql.sql +3 -1
  5. data/db/schema.sqlite.sql +3 -1
  6. data/lib/feed_tools.rb +37 -14
  7. data/lib/feed_tools/database_feed_cache.rb +13 -2
  8. data/lib/feed_tools/feed.rb +430 -104
  9. data/lib/feed_tools/feed_item.rb +533 -268
  10. data/lib/feed_tools/helpers/generic_helper.rb +1 -1
  11. data/lib/feed_tools/helpers/html_helper.rb +78 -116
  12. data/lib/feed_tools/helpers/retrieval_helper.rb +33 -3
  13. data/lib/feed_tools/helpers/uri_helper.rb +46 -54
  14. data/lib/feed_tools/monkey_patch.rb +27 -1
  15. data/lib/feed_tools/vendor/html5/History.txt +10 -0
  16. data/lib/feed_tools/vendor/html5/Manifest.txt +117 -0
  17. data/lib/feed_tools/vendor/html5/README +45 -0
  18. data/lib/feed_tools/vendor/html5/Rakefile.rb +33 -0
  19. data/lib/feed_tools/vendor/html5/bin/html5 +217 -0
  20. data/lib/feed_tools/vendor/html5/lib/core_ext/string.rb +17 -0
  21. data/lib/feed_tools/vendor/html5/lib/html5.rb +13 -0
  22. data/lib/feed_tools/vendor/html5/lib/html5/constants.rb +1046 -0
  23. data/lib/feed_tools/vendor/html5/lib/html5/filters/base.rb +10 -0
  24. data/lib/feed_tools/vendor/html5/lib/html5/filters/inject_meta_charset.rb +82 -0
  25. data/lib/feed_tools/vendor/html5/lib/html5/filters/iso639codes.rb +752 -0
  26. data/lib/feed_tools/vendor/html5/lib/html5/filters/optionaltags.rb +198 -0
  27. data/lib/feed_tools/vendor/html5/lib/html5/filters/rfc2046.rb +30 -0
  28. data/lib/feed_tools/vendor/html5/lib/html5/filters/rfc3987.rb +89 -0
  29. data/lib/feed_tools/vendor/html5/lib/html5/filters/sanitizer.rb +15 -0
  30. data/lib/feed_tools/vendor/html5/lib/html5/filters/validator.rb +830 -0
  31. data/lib/feed_tools/vendor/html5/lib/html5/filters/whitespace.rb +36 -0
  32. data/lib/feed_tools/vendor/html5/lib/html5/html5parser.rb +248 -0
  33. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/after_body_phase.rb +46 -0
  34. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/after_frameset_phase.rb +33 -0
  35. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/after_head_phase.rb +50 -0
  36. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/before_head_phase.rb +41 -0
  37. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/in_body_phase.rb +613 -0
  38. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/in_caption_phase.rb +69 -0
  39. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/in_cell_phase.rb +78 -0
  40. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/in_column_group_phase.rb +55 -0
  41. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/in_frameset_phase.rb +57 -0
  42. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/in_head_phase.rb +138 -0
  43. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/in_row_phase.rb +89 -0
  44. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/in_select_phase.rb +85 -0
  45. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_body_phase.rb +86 -0
  46. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/in_table_phase.rb +115 -0
  47. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/initial_phase.rb +133 -0
  48. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/phase.rb +154 -0
  49. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/root_element_phase.rb +41 -0
  50. data/lib/feed_tools/vendor/html5/lib/html5/html5parser/trailing_end_phase.rb +35 -0
  51. data/lib/feed_tools/vendor/html5/lib/html5/inputstream.rb +648 -0
  52. data/lib/feed_tools/vendor/html5/lib/html5/liberalxmlparser.rb +158 -0
  53. data/lib/feed_tools/vendor/html5/lib/html5/sanitizer.rb +188 -0
  54. data/lib/feed_tools/vendor/html5/lib/html5/serializer.rb +2 -0
  55. data/lib/feed_tools/vendor/html5/lib/html5/serializer/htmlserializer.rb +179 -0
  56. data/lib/feed_tools/vendor/html5/lib/html5/serializer/xhtmlserializer.rb +20 -0
  57. data/lib/feed_tools/vendor/html5/lib/html5/sniffer.rb +45 -0
  58. data/lib/feed_tools/vendor/html5/lib/html5/tokenizer.rb +966 -0
  59. data/lib/feed_tools/vendor/html5/lib/html5/treebuilders.rb +24 -0
  60. data/lib/feed_tools/vendor/html5/lib/html5/treebuilders/base.rb +334 -0
  61. data/lib/feed_tools/vendor/html5/lib/html5/treebuilders/hpricot.rb +231 -0
  62. data/lib/feed_tools/vendor/html5/lib/html5/treebuilders/rexml.rb +209 -0
  63. data/lib/feed_tools/vendor/html5/lib/html5/treebuilders/simpletree.rb +185 -0
  64. data/lib/feed_tools/vendor/html5/lib/html5/treewalkers.rb +26 -0
  65. data/lib/feed_tools/vendor/html5/lib/html5/treewalkers/base.rb +162 -0
  66. data/lib/feed_tools/vendor/html5/lib/html5/treewalkers/hpricot.rb +48 -0
  67. data/lib/feed_tools/vendor/html5/lib/html5/treewalkers/rexml.rb +48 -0
  68. data/lib/feed_tools/vendor/html5/lib/html5/treewalkers/simpletree.rb +48 -0
  69. data/lib/feed_tools/vendor/html5/lib/html5/version.rb +3 -0
  70. data/lib/feed_tools/vendor/html5/testdata/encoding/chardet/test_big5.txt +51 -0
  71. data/lib/feed_tools/vendor/html5/testdata/encoding/test-yahoo-jp.dat +10 -0
  72. data/lib/feed_tools/vendor/html5/testdata/encoding/tests1.dat +394 -0
  73. data/lib/feed_tools/vendor/html5/testdata/encoding/tests2.dat +81 -0
  74. data/lib/feed_tools/vendor/html5/testdata/sanitizer/tests1.dat +416 -0
  75. data/lib/feed_tools/vendor/html5/testdata/serializer/core.test +104 -0
  76. data/lib/feed_tools/vendor/html5/testdata/serializer/injectmeta.test +65 -0
  77. data/lib/feed_tools/vendor/html5/testdata/serializer/optionaltags.test +900 -0
  78. data/lib/feed_tools/vendor/html5/testdata/serializer/options.test +60 -0
  79. data/lib/feed_tools/vendor/html5/testdata/serializer/whitespace.test +51 -0
  80. data/lib/feed_tools/vendor/html5/testdata/sites/google-results.htm +1 -0
  81. data/lib/feed_tools/vendor/html5/testdata/sites/python-ref-import.htm +1 -0
  82. data/lib/feed_tools/vendor/html5/testdata/sites/web-apps-old.htm +1 -0
  83. data/lib/feed_tools/vendor/html5/testdata/sites/web-apps.htm +34275 -0
  84. data/lib/feed_tools/vendor/html5/testdata/sniffer/htmlOrFeed.json +43 -0
  85. data/lib/feed_tools/vendor/html5/testdata/tokenizer/contentModelFlags.test +48 -0
  86. data/lib/feed_tools/vendor/html5/testdata/tokenizer/entities.test +2339 -0
  87. data/lib/feed_tools/vendor/html5/testdata/tokenizer/escapeFlag.test +21 -0
  88. data/lib/feed_tools/vendor/html5/testdata/tokenizer/test1.test +172 -0
  89. data/lib/feed_tools/vendor/html5/testdata/tokenizer/test2.test +129 -0
  90. data/lib/feed_tools/vendor/html5/testdata/tokenizer/test3.test +367 -0
  91. data/lib/feed_tools/vendor/html5/testdata/tokenizer/test4.test +198 -0
  92. data/lib/feed_tools/vendor/html5/testdata/tree-construction/tests1.dat +1950 -0
  93. data/lib/feed_tools/vendor/html5/testdata/tree-construction/tests2.dat +773 -0
  94. data/lib/feed_tools/vendor/html5/testdata/tree-construction/tests3.dat +270 -0
  95. data/lib/feed_tools/vendor/html5/testdata/tree-construction/tests4.dat +60 -0
  96. data/lib/feed_tools/vendor/html5/testdata/tree-construction/tests5.dat +175 -0
  97. data/lib/feed_tools/vendor/html5/testdata/tree-construction/tests6.dat +196 -0
  98. data/lib/feed_tools/vendor/html5/testdata/validator/attributes.test +1035 -0
  99. data/lib/feed_tools/vendor/html5/testdata/validator/base-href-attribute.test +787 -0
  100. data/lib/feed_tools/vendor/html5/testdata/validator/base-target-attribute.test +35 -0
  101. data/lib/feed_tools/vendor/html5/testdata/validator/blockquote-cite-attribute.test +7 -0
  102. data/lib/feed_tools/vendor/html5/testdata/validator/classattribute.test +152 -0
  103. data/lib/feed_tools/vendor/html5/testdata/validator/contenteditableattribute.test +59 -0
  104. data/lib/feed_tools/vendor/html5/testdata/validator/contextmenuattribute.test +115 -0
  105. data/lib/feed_tools/vendor/html5/testdata/validator/dirattribute.test +59 -0
  106. data/lib/feed_tools/vendor/html5/testdata/validator/draggableattribute.test +63 -0
  107. data/lib/feed_tools/vendor/html5/testdata/validator/html-xmlns-attribute.test +23 -0
  108. data/lib/feed_tools/vendor/html5/testdata/validator/idattribute.test +115 -0
  109. data/lib/feed_tools/vendor/html5/testdata/validator/inputattributes.test +2795 -0
  110. data/lib/feed_tools/vendor/html5/testdata/validator/irrelevantattribute.test +63 -0
  111. data/lib/feed_tools/vendor/html5/testdata/validator/langattribute.test +5579 -0
  112. data/lib/feed_tools/vendor/html5/testdata/validator/li-value-attribute.test +7 -0
  113. data/lib/feed_tools/vendor/html5/testdata/validator/link-href-attribute.test +7 -0
  114. data/lib/feed_tools/vendor/html5/testdata/validator/link-hreflang-attribute.test +7 -0
  115. data/lib/feed_tools/vendor/html5/testdata/validator/link-rel-attribute.test +271 -0
  116. data/lib/feed_tools/vendor/html5/testdata/validator/ol-start-attribute.test +7 -0
  117. data/lib/feed_tools/vendor/html5/testdata/validator/starttags.test +375 -0
  118. data/lib/feed_tools/vendor/html5/testdata/validator/style-scoped-attribute.test +7 -0
  119. data/lib/feed_tools/vendor/html5/testdata/validator/tabindexattribute.test +79 -0
  120. data/lib/feed_tools/vendor/html5/tests/preamble.rb +72 -0
  121. data/lib/feed_tools/vendor/html5/tests/test_encoding.rb +35 -0
  122. data/lib/feed_tools/vendor/html5/tests/test_lxp.rb +279 -0
  123. data/lib/feed_tools/vendor/html5/tests/test_parser.rb +68 -0
  124. data/lib/feed_tools/vendor/html5/tests/test_sanitizer.rb +142 -0
  125. data/lib/feed_tools/vendor/html5/tests/test_serializer.rb +68 -0
  126. data/lib/feed_tools/vendor/html5/tests/test_sniffer.rb +27 -0
  127. data/lib/feed_tools/vendor/html5/tests/test_stream.rb +62 -0
  128. data/lib/feed_tools/vendor/html5/tests/test_tokenizer.rb +94 -0
  129. data/lib/feed_tools/vendor/html5/tests/test_treewalkers.rb +135 -0
  130. data/lib/feed_tools/vendor/html5/tests/test_validator.rb +31 -0
  131. data/lib/feed_tools/vendor/html5/tests/tokenizer_test_parser.rb +63 -0
  132. data/lib/feed_tools/vendor/uri.rb +781 -0
  133. data/lib/feed_tools/version.rb +1 -1
  134. data/rakefile +27 -6
  135. data/test/unit/atom_test.rb +298 -210
  136. data/test/unit/helper_test.rb +7 -12
  137. data/test/unit/rdf_test.rb +51 -1
  138. data/test/unit/rss_test.rb +13 -3
  139. metadata +239 -116
  140. data/lib/feed_tools/vendor/htree.rb +0 -97
  141. data/lib/feed_tools/vendor/htree/container.rb +0 -10
  142. data/lib/feed_tools/vendor/htree/context.rb +0 -67
  143. data/lib/feed_tools/vendor/htree/display.rb +0 -27
  144. data/lib/feed_tools/vendor/htree/doc.rb +0 -149
  145. data/lib/feed_tools/vendor/htree/elem.rb +0 -262
  146. data/lib/feed_tools/vendor/htree/encoder.rb +0 -163
  147. data/lib/feed_tools/vendor/htree/equality.rb +0 -218
  148. data/lib/feed_tools/vendor/htree/extract_text.rb +0 -37
  149. data/lib/feed_tools/vendor/htree/fstr.rb +0 -33
  150. data/lib/feed_tools/vendor/htree/gencode.rb +0 -97
  151. data/lib/feed_tools/vendor/htree/htmlinfo.rb +0 -672
  152. data/lib/feed_tools/vendor/htree/inspect.rb +0 -108
  153. data/lib/feed_tools/vendor/htree/leaf.rb +0 -94
  154. data/lib/feed_tools/vendor/htree/loc.rb +0 -367
  155. data/lib/feed_tools/vendor/htree/modules.rb +0 -48
  156. data/lib/feed_tools/vendor/htree/name.rb +0 -124
  157. data/lib/feed_tools/vendor/htree/output.rb +0 -207
  158. data/lib/feed_tools/vendor/htree/parse.rb +0 -409
  159. data/lib/feed_tools/vendor/htree/raw_string.rb +0 -124
  160. data/lib/feed_tools/vendor/htree/regexp-util.rb +0 -15
  161. data/lib/feed_tools/vendor/htree/rexml.rb +0 -130
  162. data/lib/feed_tools/vendor/htree/scan.rb +0 -166
  163. data/lib/feed_tools/vendor/htree/tag.rb +0 -111
  164. data/lib/feed_tools/vendor/htree/template.rb +0 -909
  165. data/lib/feed_tools/vendor/htree/text.rb +0 -115
  166. data/lib/feed_tools/vendor/htree/traverse.rb +0 -465
@@ -0,0 +1,23 @@
1
+ {"tests": [
2
+
3
+ {"description": "valid html xmlns attribute",
4
+ "input": "<html xmlns=http://www.w3.org/1999/xhtml>",
5
+ "fail-if": "invalid-root-namespace"},
6
+
7
+ {"description": "invalid html xmlns attribute due to leading space",
8
+ "input": "<html xmlns=' http://www.w3.org/1999/xhtml'>",
9
+ "fail-unless": "invalid-root-namespace"},
10
+
11
+ {"description": "invalid html xmlns attribute due to trailing space",
12
+ "input": "<html xmlns='http://www.w3.org/1999/xhtml '>",
13
+ "fail-unless": "invalid-root-namespace"},
14
+
15
+ {"description": "invalid html xmlns attribute due to uppercase",
16
+ "input": "<html xmlns=HTTP://WWW.W3.ORG/1999/XHTML>",
17
+ "fail-unless": "invalid-root-namespace"},
18
+
19
+ {"description": "invalid xmlns attribute on non-html element",
20
+ "input": "<body xmlns=http://www.w3.org/1999/xhtml>",
21
+ "fail-unless": "unknown-attribute"}
22
+
23
+ ]}
@@ -0,0 +1,115 @@
1
+ {"tests": [
2
+
3
+ {"description": "valid ID 'a'",
4
+ "input": "<span id=a>",
5
+ "fail-if": "invalid-attribute-value"},
6
+
7
+ {"description": "valid ID '1'",
8
+ "input": "<span id=1>",
9
+ "fail-if": "invalid-attribute-value"},
10
+
11
+ {"description": "wacky but valid ID",
12
+ "input": "<span id='<html><head><title>a</title></head><body><p>b</p></body></html>'>",
13
+ "fail-if": "invalid-attribute-value"},
14
+
15
+ {"description": "invalid blank ID",
16
+ "input": "<span id>",
17
+ "fail-unless": "attribute-value-can-not-be-blank"},
18
+
19
+ {"description": "invalid blank ID with quotes",
20
+ "input": "<span id=''>",
21
+ "fail-unless": "attribute-value-can-not-be-blank"},
22
+
23
+ {"description": "invalid ID because of leading space",
24
+ "input": "<span id=' a'>",
25
+ "fail-unless": "space-in-id"},
26
+
27
+ {"description": "invalid ID because of trailing space",
28
+ "input": "<span id='a '>",
29
+ "fail-unless": "space-in-id"},
30
+
31
+ {"description": "invalid ID because of space in value",
32
+ "input": "<span id='a b'>",
33
+ "fail-unless": "space-in-id"},
34
+
35
+ {"description": "invalid ID because of leading tab",
36
+ "input": "<span id='\ta'>",
37
+ "fail-unless": "space-in-id"},
38
+
39
+ {"description": "invalid ID because of trailing tab",
40
+ "input": "<span id='a\t'>",
41
+ "fail-unless": "space-in-id"},
42
+
43
+ {"description": "invalid ID because of tab in value",
44
+ "input": "<span id='a\tb'>",
45
+ "fail-unless": "space-in-id"},
46
+
47
+ {"description": "invalid ID because of leading LF",
48
+ "input": "<span id='\na'>",
49
+ "fail-unless": "space-in-id"},
50
+
51
+ {"description": "invalid ID because of trailing LF",
52
+ "input": "<span id='a\n'>",
53
+ "fail-unless": "space-in-id"},
54
+
55
+ {"description": "invalid ID because of LF in value",
56
+ "input": "<span id='a\nb'>",
57
+ "fail-unless": "space-in-id"},
58
+
59
+ {"description": "invalid ID because of leading LT",
60
+ "input": "<span id='\u000Ba'>",
61
+ "fail-unless": "space-in-id"},
62
+
63
+ {"description": "invalid ID because of trailing LT",
64
+ "input": "<span id='a\u000B'>",
65
+ "fail-unless": "space-in-id"},
66
+
67
+ {"description": "invalid ID because of LT in value",
68
+ "input": "<span id='a\u000Bb'>",
69
+ "fail-unless": "space-in-id"},
70
+
71
+ {"description": "invalid ID because of leading FF",
72
+ "input": "<span id='\u000Ca'>",
73
+ "fail-unless": "space-in-id"},
74
+
75
+ {"description": "invalid ID because of trailing FF",
76
+ "input": "<span id='a\u000C'>",
77
+ "fail-unless": "space-in-id"},
78
+
79
+ {"description": "invalid ID because of FF in value",
80
+ "input": "<span id='a\u000Cb'>",
81
+ "fail-unless": "space-in-id"},
82
+
83
+ {"description": "invalid ID because of leading CR",
84
+ "input": "<span id='\ra'>",
85
+ "fail-unless": "space-in-id"},
86
+
87
+ {"description": "invalid ID because of trailing CR",
88
+ "input": "<span id='a\r'>",
89
+ "fail-unless": "space-in-id"},
90
+
91
+ {"description": "invalid ID because of CR in value",
92
+ "input": "<span id='a\rb'>",
93
+ "fail-unless": "space-in-id"},
94
+
95
+ {"description": "duplicate ID values",
96
+ "input": "<span id=a><span id=a>",
97
+ "fail-unless": "duplicate-id"},
98
+
99
+ {"description": "duplicate ID values with spaces (weird but true)",
100
+ "input": "<span id='a '><span id='a '>",
101
+ "fail-unless": "duplicate-id"},
102
+
103
+ {"description": "not duplicate ID values because spaces don't match",
104
+ "input": "<span id=a><span id='a '>",
105
+ "fail-if": "duplicate-id"},
106
+
107
+ {"description": "not duplicate ID values because spaces don't match",
108
+ "input": "<span id=' a'><span id='a '>",
109
+ "fail-if": "duplicate-id"},
110
+
111
+ {"description": "not duplicate ID values because case doesn't match",
112
+ "input": "<span id=a><span id=A>",
113
+ "fail-if": "duplicate-id"}
114
+
115
+ ]}
@@ -0,0 +1,2795 @@
1
+ {"tests": [
2
+
3
+ {"description": "'size' attribute deprecated on <input type='text'>",
4
+ "input": "<input type=text size>",
5
+ "fail-unless": "deprecated-attribute"},
6
+
7
+ {"description": "'size' attribute deprecated on <input type='password'>",
8
+ "input": "<input type=password size>",
9
+ "fail-unless": "deprecated-attribute"},
10
+
11
+ {"description": "allowed 'accesskey' attribute on <input type='checkbox'>",
12
+ "input": "<input type=checkbox accesskey>",
13
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
14
+
15
+ {"description": "'accept' attribute not allowed on <input type='checkbox'>",
16
+ "input": "<input type=checkbox accept>",
17
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
18
+
19
+ {"description": "'replace' attribute not allowed on <input type='checkbox'>",
20
+ "input": "<input type=checkbox replace>",
21
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
22
+
23
+ {"description": "allowed 'disabled' attribute on <input type='checkbox'>",
24
+ "input": "<input type=checkbox disabled>",
25
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
26
+
27
+ {"description": "'alt' attribute not allowed on <input type='checkbox'>",
28
+ "input": "<input type=checkbox alt>",
29
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
30
+
31
+ {"description": "'size' attribute not allowed on <input type='checkbox'>",
32
+ "input": "<input type=checkbox size>",
33
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
34
+
35
+ {"description": "allowed 'checked' attribute on <input type='checkbox'>",
36
+ "input": "<input type=checkbox checked>",
37
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
38
+
39
+ {"description": "'min' attribute not allowed on <input type='checkbox'>",
40
+ "input": "<input type=checkbox min>",
41
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
42
+
43
+ {"description": "'pattern' attribute not allowed on <input type='checkbox'>",
44
+ "input": "<input type=checkbox pattern>",
45
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
46
+
47
+ {"description": "'readonly' attribute not allowed on <input type='checkbox'>",
48
+ "input": "<input type=checkbox readonly>",
49
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
50
+
51
+ {"description": "'template' attribute not allowed on <input type='checkbox'>",
52
+ "input": "<input type=checkbox template>",
53
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
54
+
55
+ {"description": "allowed 'autofocus' attribute on <input type='checkbox'>",
56
+ "input": "<input type=checkbox autofocus>",
57
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
58
+
59
+ {"description": "'target' attribute not allowed on <input type='checkbox'>",
60
+ "input": "<input type=checkbox target>",
61
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
62
+
63
+ {"description": "'method' attribute not allowed on <input type='checkbox'>",
64
+ "input": "<input type=checkbox method>",
65
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
66
+
67
+ {"description": "allowed 'form' attribute on <input type='checkbox'>",
68
+ "input": "<input type=checkbox form>",
69
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
70
+
71
+ {"description": "'max' attribute not allowed on <input type='checkbox'>",
72
+ "input": "<input type=checkbox max>",
73
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
74
+
75
+ {"description": "'step' attribute not allowed on <input type='checkbox'>",
76
+ "input": "<input type=checkbox step>",
77
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
78
+
79
+ {"description": "'enctype' attribute not allowed on <input type='checkbox'>",
80
+ "input": "<input type=checkbox enctype>",
81
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
82
+
83
+ {"description": "'src' attribute not allowed on <input type='checkbox'>",
84
+ "input": "<input type=checkbox src>",
85
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
86
+
87
+ {"description": "allowed 'name' attribute on <input type='checkbox'>",
88
+ "input": "<input type=checkbox name>",
89
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
90
+
91
+ {"description": "allowed 'required' attribute on <input type='checkbox'>",
92
+ "input": "<input type=checkbox required>",
93
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
94
+
95
+ {"description": "'list' attribute not allowed on <input type='checkbox'>",
96
+ "input": "<input type=checkbox list>",
97
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
98
+
99
+ {"description": "allowed 'value' attribute on <input type='checkbox'>",
100
+ "input": "<input type=checkbox value>",
101
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
102
+
103
+ {"description": "'autocomplete' attribute not allowed on <input type='checkbox'>",
104
+ "input": "<input type=checkbox autocomplete>",
105
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
106
+
107
+ {"description": "'inputmode' attribute not allowed on <input type='checkbox'>",
108
+ "input": "<input type=checkbox inputmode>",
109
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
110
+
111
+ {"description": "'maxlength' attribute not allowed on <input type='checkbox'>",
112
+ "input": "<input type=checkbox maxlength>",
113
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
114
+
115
+ {"description": "'action' attribute not allowed on <input type='checkbox'>",
116
+ "input": "<input type=checkbox action>",
117
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
118
+
119
+ {"description": "allowed 'tabindex' attribute on <input type='checkbox'>",
120
+ "input": "<input type=checkbox tabindex>",
121
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
122
+
123
+ {"description": "allowed 'accesskey' attribute on <input type='text'>",
124
+ "input": "<input type=text accesskey>",
125
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
126
+
127
+ {"description": "'accept' attribute not allowed on <input type='text'>",
128
+ "input": "<input type=text accept>",
129
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
130
+
131
+ {"description": "'replace' attribute not allowed on <input type='text'>",
132
+ "input": "<input type=text replace>",
133
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
134
+
135
+ {"description": "allowed 'disabled' attribute on <input type='text'>",
136
+ "input": "<input type=text disabled>",
137
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
138
+
139
+ {"description": "'alt' attribute not allowed on <input type='text'>",
140
+ "input": "<input type=text alt>",
141
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
142
+
143
+ {"description": "allowed 'size' attribute on <input type='text'>",
144
+ "input": "<input type=text size>",
145
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
146
+
147
+ {"description": "'checked' attribute not allowed on <input type='text'>",
148
+ "input": "<input type=text checked>",
149
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
150
+
151
+ {"description": "'min' attribute not allowed on <input type='text'>",
152
+ "input": "<input type=text min>",
153
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
154
+
155
+ {"description": "allowed 'pattern' attribute on <input type='text'>",
156
+ "input": "<input type=text pattern>",
157
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
158
+
159
+ {"description": "allowed 'readonly' attribute on <input type='text'>",
160
+ "input": "<input type=text readonly>",
161
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
162
+
163
+ {"description": "'template' attribute not allowed on <input type='text'>",
164
+ "input": "<input type=text template>",
165
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
166
+
167
+ {"description": "allowed 'autofocus' attribute on <input type='text'>",
168
+ "input": "<input type=text autofocus>",
169
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
170
+
171
+ {"description": "'target' attribute not allowed on <input type='text'>",
172
+ "input": "<input type=text target>",
173
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
174
+
175
+ {"description": "'method' attribute not allowed on <input type='text'>",
176
+ "input": "<input type=text method>",
177
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
178
+
179
+ {"description": "allowed 'form' attribute on <input type='text'>",
180
+ "input": "<input type=text form>",
181
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
182
+
183
+ {"description": "'max' attribute not allowed on <input type='text'>",
184
+ "input": "<input type=text max>",
185
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
186
+
187
+ {"description": "'step' attribute not allowed on <input type='text'>",
188
+ "input": "<input type=text step>",
189
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
190
+
191
+ {"description": "'enctype' attribute not allowed on <input type='text'>",
192
+ "input": "<input type=text enctype>",
193
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
194
+
195
+ {"description": "'src' attribute not allowed on <input type='text'>",
196
+ "input": "<input type=text src>",
197
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
198
+
199
+ {"description": "allowed 'name' attribute on <input type='text'>",
200
+ "input": "<input type=text name>",
201
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
202
+
203
+ {"description": "allowed 'required' attribute on <input type='text'>",
204
+ "input": "<input type=text required>",
205
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
206
+
207
+ {"description": "allowed 'list' attribute on <input type='text'>",
208
+ "input": "<input type=text list>",
209
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
210
+
211
+ {"description": "allowed 'value' attribute on <input type='text'>",
212
+ "input": "<input type=text value>",
213
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
214
+
215
+ {"description": "allowed 'autocomplete' attribute on <input type='text'>",
216
+ "input": "<input type=text autocomplete>",
217
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
218
+
219
+ {"description": "allowed 'inputmode' attribute on <input type='text'>",
220
+ "input": "<input type=text inputmode>",
221
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
222
+
223
+ {"description": "allowed 'maxlength' attribute on <input type='text'>",
224
+ "input": "<input type=text maxlength>",
225
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
226
+
227
+ {"description": "'action' attribute not allowed on <input type='text'>",
228
+ "input": "<input type=text action>",
229
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
230
+
231
+ {"description": "allowed 'tabindex' attribute on <input type='text'>",
232
+ "input": "<input type=text tabindex>",
233
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
234
+
235
+ {"description": "allowed 'accesskey' attribute on <input type='image'>",
236
+ "input": "<input type=image accesskey>",
237
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
238
+
239
+ {"description": "'accept' attribute not allowed on <input type='image'>",
240
+ "input": "<input type=image accept>",
241
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
242
+
243
+ {"description": "allowed 'replace' attribute on <input type='image'>",
244
+ "input": "<input type=image replace>",
245
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
246
+
247
+ {"description": "allowed 'disabled' attribute on <input type='image'>",
248
+ "input": "<input type=image disabled>",
249
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
250
+
251
+ {"description": "allowed 'alt' attribute on <input type='image'>",
252
+ "input": "<input type=image alt>",
253
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
254
+
255
+ {"description": "'size' attribute not allowed on <input type='image'>",
256
+ "input": "<input type=image size>",
257
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
258
+
259
+ {"description": "'checked' attribute not allowed on <input type='image'>",
260
+ "input": "<input type=image checked>",
261
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
262
+
263
+ {"description": "'min' attribute not allowed on <input type='image'>",
264
+ "input": "<input type=image min>",
265
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
266
+
267
+ {"description": "'pattern' attribute not allowed on <input type='image'>",
268
+ "input": "<input type=image pattern>",
269
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
270
+
271
+ {"description": "'readonly' attribute not allowed on <input type='image'>",
272
+ "input": "<input type=image readonly>",
273
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
274
+
275
+ {"description": "'template' attribute not allowed on <input type='image'>",
276
+ "input": "<input type=image template>",
277
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
278
+
279
+ {"description": "allowed 'autofocus' attribute on <input type='image'>",
280
+ "input": "<input type=image autofocus>",
281
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
282
+
283
+ {"description": "allowed 'target' attribute on <input type='image'>",
284
+ "input": "<input type=image target>",
285
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
286
+
287
+ {"description": "allowed 'method' attribute on <input type='image'>",
288
+ "input": "<input type=image method>",
289
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
290
+
291
+ {"description": "allowed 'form' attribute on <input type='image'>",
292
+ "input": "<input type=image form>",
293
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
294
+
295
+ {"description": "'max' attribute not allowed on <input type='image'>",
296
+ "input": "<input type=image max>",
297
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
298
+
299
+ {"description": "'step' attribute not allowed on <input type='image'>",
300
+ "input": "<input type=image step>",
301
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
302
+
303
+ {"description": "allowed 'enctype' attribute on <input type='image'>",
304
+ "input": "<input type=image enctype>",
305
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
306
+
307
+ {"description": "allowed 'src' attribute on <input type='image'>",
308
+ "input": "<input type=image src>",
309
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
310
+
311
+ {"description": "allowed 'name' attribute on <input type='image'>",
312
+ "input": "<input type=image name>",
313
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
314
+
315
+ {"description": "'required' attribute not allowed on <input type='image'>",
316
+ "input": "<input type=image required>",
317
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
318
+
319
+ {"description": "'list' attribute not allowed on <input type='image'>",
320
+ "input": "<input type=image list>",
321
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
322
+
323
+ {"description": "'value' attribute not allowed on <input type='image'>",
324
+ "input": "<input type=image value>",
325
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
326
+
327
+ {"description": "'autocomplete' attribute not allowed on <input type='image'>",
328
+ "input": "<input type=image autocomplete>",
329
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
330
+
331
+ {"description": "'inputmode' attribute not allowed on <input type='image'>",
332
+ "input": "<input type=image inputmode>",
333
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
334
+
335
+ {"description": "'maxlength' attribute not allowed on <input type='image'>",
336
+ "input": "<input type=image maxlength>",
337
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
338
+
339
+ {"description": "allowed 'action' attribute on <input type='image'>",
340
+ "input": "<input type=image action>",
341
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
342
+
343
+ {"description": "allowed 'tabindex' attribute on <input type='image'>",
344
+ "input": "<input type=image tabindex>",
345
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
346
+
347
+ {"description": "allowed 'accesskey' attribute on <input type='number'>",
348
+ "input": "<input type=number accesskey>",
349
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
350
+
351
+ {"description": "'accept' attribute not allowed on <input type='number'>",
352
+ "input": "<input type=number accept>",
353
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
354
+
355
+ {"description": "'replace' attribute not allowed on <input type='number'>",
356
+ "input": "<input type=number replace>",
357
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
358
+
359
+ {"description": "allowed 'disabled' attribute on <input type='number'>",
360
+ "input": "<input type=number disabled>",
361
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
362
+
363
+ {"description": "'alt' attribute not allowed on <input type='number'>",
364
+ "input": "<input type=number alt>",
365
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
366
+
367
+ {"description": "'size' attribute not allowed on <input type='number'>",
368
+ "input": "<input type=number size>",
369
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
370
+
371
+ {"description": "'checked' attribute not allowed on <input type='number'>",
372
+ "input": "<input type=number checked>",
373
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
374
+
375
+ {"description": "allowed 'min' attribute on <input type='number'>",
376
+ "input": "<input type=number min>",
377
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
378
+
379
+ {"description": "'pattern' attribute not allowed on <input type='number'>",
380
+ "input": "<input type=number pattern>",
381
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
382
+
383
+ {"description": "allowed 'readonly' attribute on <input type='number'>",
384
+ "input": "<input type=number readonly>",
385
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
386
+
387
+ {"description": "'template' attribute not allowed on <input type='number'>",
388
+ "input": "<input type=number template>",
389
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
390
+
391
+ {"description": "allowed 'autofocus' attribute on <input type='number'>",
392
+ "input": "<input type=number autofocus>",
393
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
394
+
395
+ {"description": "'target' attribute not allowed on <input type='number'>",
396
+ "input": "<input type=number target>",
397
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
398
+
399
+ {"description": "'method' attribute not allowed on <input type='number'>",
400
+ "input": "<input type=number method>",
401
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
402
+
403
+ {"description": "allowed 'form' attribute on <input type='number'>",
404
+ "input": "<input type=number form>",
405
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
406
+
407
+ {"description": "allowed 'max' attribute on <input type='number'>",
408
+ "input": "<input type=number max>",
409
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
410
+
411
+ {"description": "allowed 'step' attribute on <input type='number'>",
412
+ "input": "<input type=number step>",
413
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
414
+
415
+ {"description": "'enctype' attribute not allowed on <input type='number'>",
416
+ "input": "<input type=number enctype>",
417
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
418
+
419
+ {"description": "'src' attribute not allowed on <input type='number'>",
420
+ "input": "<input type=number src>",
421
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
422
+
423
+ {"description": "allowed 'name' attribute on <input type='number'>",
424
+ "input": "<input type=number name>",
425
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
426
+
427
+ {"description": "allowed 'required' attribute on <input type='number'>",
428
+ "input": "<input type=number required>",
429
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
430
+
431
+ {"description": "allowed 'list' attribute on <input type='number'>",
432
+ "input": "<input type=number list>",
433
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
434
+
435
+ {"description": "allowed 'value' attribute on <input type='number'>",
436
+ "input": "<input type=number value>",
437
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
438
+
439
+ {"description": "allowed 'autocomplete' attribute on <input type='number'>",
440
+ "input": "<input type=number autocomplete>",
441
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
442
+
443
+ {"description": "'inputmode' attribute not allowed on <input type='number'>",
444
+ "input": "<input type=number inputmode>",
445
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
446
+
447
+ {"description": "'maxlength' attribute not allowed on <input type='number'>",
448
+ "input": "<input type=number maxlength>",
449
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
450
+
451
+ {"description": "'action' attribute not allowed on <input type='number'>",
452
+ "input": "<input type=number action>",
453
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
454
+
455
+ {"description": "allowed 'tabindex' attribute on <input type='number'>",
456
+ "input": "<input type=number tabindex>",
457
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
458
+
459
+ {"description": "allowed 'accesskey' attribute on <input type='month'>",
460
+ "input": "<input type=month accesskey>",
461
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
462
+
463
+ {"description": "'accept' attribute not allowed on <input type='month'>",
464
+ "input": "<input type=month accept>",
465
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
466
+
467
+ {"description": "'replace' attribute not allowed on <input type='month'>",
468
+ "input": "<input type=month replace>",
469
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
470
+
471
+ {"description": "allowed 'disabled' attribute on <input type='month'>",
472
+ "input": "<input type=month disabled>",
473
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
474
+
475
+ {"description": "'alt' attribute not allowed on <input type='month'>",
476
+ "input": "<input type=month alt>",
477
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
478
+
479
+ {"description": "'size' attribute not allowed on <input type='month'>",
480
+ "input": "<input type=month size>",
481
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
482
+
483
+ {"description": "'checked' attribute not allowed on <input type='month'>",
484
+ "input": "<input type=month checked>",
485
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
486
+
487
+ {"description": "allowed 'min' attribute on <input type='month'>",
488
+ "input": "<input type=month min>",
489
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
490
+
491
+ {"description": "'pattern' attribute not allowed on <input type='month'>",
492
+ "input": "<input type=month pattern>",
493
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
494
+
495
+ {"description": "allowed 'readonly' attribute on <input type='month'>",
496
+ "input": "<input type=month readonly>",
497
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
498
+
499
+ {"description": "'template' attribute not allowed on <input type='month'>",
500
+ "input": "<input type=month template>",
501
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
502
+
503
+ {"description": "allowed 'autofocus' attribute on <input type='month'>",
504
+ "input": "<input type=month autofocus>",
505
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
506
+
507
+ {"description": "'target' attribute not allowed on <input type='month'>",
508
+ "input": "<input type=month target>",
509
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
510
+
511
+ {"description": "'method' attribute not allowed on <input type='month'>",
512
+ "input": "<input type=month method>",
513
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
514
+
515
+ {"description": "allowed 'form' attribute on <input type='month'>",
516
+ "input": "<input type=month form>",
517
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
518
+
519
+ {"description": "allowed 'max' attribute on <input type='month'>",
520
+ "input": "<input type=month max>",
521
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
522
+
523
+ {"description": "allowed 'step' attribute on <input type='month'>",
524
+ "input": "<input type=month step>",
525
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
526
+
527
+ {"description": "'enctype' attribute not allowed on <input type='month'>",
528
+ "input": "<input type=month enctype>",
529
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
530
+
531
+ {"description": "'src' attribute not allowed on <input type='month'>",
532
+ "input": "<input type=month src>",
533
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
534
+
535
+ {"description": "allowed 'name' attribute on <input type='month'>",
536
+ "input": "<input type=month name>",
537
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
538
+
539
+ {"description": "allowed 'required' attribute on <input type='month'>",
540
+ "input": "<input type=month required>",
541
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
542
+
543
+ {"description": "allowed 'list' attribute on <input type='month'>",
544
+ "input": "<input type=month list>",
545
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
546
+
547
+ {"description": "allowed 'value' attribute on <input type='month'>",
548
+ "input": "<input type=month value>",
549
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
550
+
551
+ {"description": "allowed 'autocomplete' attribute on <input type='month'>",
552
+ "input": "<input type=month autocomplete>",
553
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
554
+
555
+ {"description": "'inputmode' attribute not allowed on <input type='month'>",
556
+ "input": "<input type=month inputmode>",
557
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
558
+
559
+ {"description": "'maxlength' attribute not allowed on <input type='month'>",
560
+ "input": "<input type=month maxlength>",
561
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
562
+
563
+ {"description": "'action' attribute not allowed on <input type='month'>",
564
+ "input": "<input type=month action>",
565
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
566
+
567
+ {"description": "allowed 'tabindex' attribute on <input type='month'>",
568
+ "input": "<input type=month tabindex>",
569
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
570
+
571
+ {"description": "allowed 'accesskey' attribute on <input type='radio'>",
572
+ "input": "<input type=radio accesskey>",
573
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
574
+
575
+ {"description": "'accept' attribute not allowed on <input type='radio'>",
576
+ "input": "<input type=radio accept>",
577
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
578
+
579
+ {"description": "'replace' attribute not allowed on <input type='radio'>",
580
+ "input": "<input type=radio replace>",
581
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
582
+
583
+ {"description": "allowed 'disabled' attribute on <input type='radio'>",
584
+ "input": "<input type=radio disabled>",
585
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
586
+
587
+ {"description": "'alt' attribute not allowed on <input type='radio'>",
588
+ "input": "<input type=radio alt>",
589
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
590
+
591
+ {"description": "'size' attribute not allowed on <input type='radio'>",
592
+ "input": "<input type=radio size>",
593
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
594
+
595
+ {"description": "allowed 'checked' attribute on <input type='radio'>",
596
+ "input": "<input type=radio checked>",
597
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
598
+
599
+ {"description": "'min' attribute not allowed on <input type='radio'>",
600
+ "input": "<input type=radio min>",
601
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
602
+
603
+ {"description": "'pattern' attribute not allowed on <input type='radio'>",
604
+ "input": "<input type=radio pattern>",
605
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
606
+
607
+ {"description": "'readonly' attribute not allowed on <input type='radio'>",
608
+ "input": "<input type=radio readonly>",
609
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
610
+
611
+ {"description": "'template' attribute not allowed on <input type='radio'>",
612
+ "input": "<input type=radio template>",
613
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
614
+
615
+ {"description": "allowed 'autofocus' attribute on <input type='radio'>",
616
+ "input": "<input type=radio autofocus>",
617
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
618
+
619
+ {"description": "'target' attribute not allowed on <input type='radio'>",
620
+ "input": "<input type=radio target>",
621
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
622
+
623
+ {"description": "'method' attribute not allowed on <input type='radio'>",
624
+ "input": "<input type=radio method>",
625
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
626
+
627
+ {"description": "allowed 'form' attribute on <input type='radio'>",
628
+ "input": "<input type=radio form>",
629
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
630
+
631
+ {"description": "'max' attribute not allowed on <input type='radio'>",
632
+ "input": "<input type=radio max>",
633
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
634
+
635
+ {"description": "'step' attribute not allowed on <input type='radio'>",
636
+ "input": "<input type=radio step>",
637
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
638
+
639
+ {"description": "'enctype' attribute not allowed on <input type='radio'>",
640
+ "input": "<input type=radio enctype>",
641
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
642
+
643
+ {"description": "'src' attribute not allowed on <input type='radio'>",
644
+ "input": "<input type=radio src>",
645
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
646
+
647
+ {"description": "allowed 'name' attribute on <input type='radio'>",
648
+ "input": "<input type=radio name>",
649
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
650
+
651
+ {"description": "allowed 'required' attribute on <input type='radio'>",
652
+ "input": "<input type=radio required>",
653
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
654
+
655
+ {"description": "'list' attribute not allowed on <input type='radio'>",
656
+ "input": "<input type=radio list>",
657
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
658
+
659
+ {"description": "allowed 'value' attribute on <input type='radio'>",
660
+ "input": "<input type=radio value>",
661
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
662
+
663
+ {"description": "'autocomplete' attribute not allowed on <input type='radio'>",
664
+ "input": "<input type=radio autocomplete>",
665
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
666
+
667
+ {"description": "'inputmode' attribute not allowed on <input type='radio'>",
668
+ "input": "<input type=radio inputmode>",
669
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
670
+
671
+ {"description": "'maxlength' attribute not allowed on <input type='radio'>",
672
+ "input": "<input type=radio maxlength>",
673
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
674
+
675
+ {"description": "'action' attribute not allowed on <input type='radio'>",
676
+ "input": "<input type=radio action>",
677
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
678
+
679
+ {"description": "allowed 'tabindex' attribute on <input type='radio'>",
680
+ "input": "<input type=radio tabindex>",
681
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
682
+
683
+ {"description": "allowed 'accesskey' attribute on <input type='file'>",
684
+ "input": "<input type=file accesskey>",
685
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
686
+
687
+ {"description": "allowed 'accept' attribute on <input type='file'>",
688
+ "input": "<input type=file accept>",
689
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
690
+
691
+ {"description": "'replace' attribute not allowed on <input type='file'>",
692
+ "input": "<input type=file replace>",
693
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
694
+
695
+ {"description": "allowed 'disabled' attribute on <input type='file'>",
696
+ "input": "<input type=file disabled>",
697
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
698
+
699
+ {"description": "'alt' attribute not allowed on <input type='file'>",
700
+ "input": "<input type=file alt>",
701
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
702
+
703
+ {"description": "'size' attribute not allowed on <input type='file'>",
704
+ "input": "<input type=file size>",
705
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
706
+
707
+ {"description": "'checked' attribute not allowed on <input type='file'>",
708
+ "input": "<input type=file checked>",
709
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
710
+
711
+ {"description": "allowed 'min' attribute on <input type='file'>",
712
+ "input": "<input type=file min>",
713
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
714
+
715
+ {"description": "'pattern' attribute not allowed on <input type='file'>",
716
+ "input": "<input type=file pattern>",
717
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
718
+
719
+ {"description": "'readonly' attribute not allowed on <input type='file'>",
720
+ "input": "<input type=file readonly>",
721
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
722
+
723
+ {"description": "'template' attribute not allowed on <input type='file'>",
724
+ "input": "<input type=file template>",
725
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
726
+
727
+ {"description": "allowed 'autofocus' attribute on <input type='file'>",
728
+ "input": "<input type=file autofocus>",
729
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
730
+
731
+ {"description": "'target' attribute not allowed on <input type='file'>",
732
+ "input": "<input type=file target>",
733
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
734
+
735
+ {"description": "'method' attribute not allowed on <input type='file'>",
736
+ "input": "<input type=file method>",
737
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
738
+
739
+ {"description": "allowed 'form' attribute on <input type='file'>",
740
+ "input": "<input type=file form>",
741
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
742
+
743
+ {"description": "allowed 'max' attribute on <input type='file'>",
744
+ "input": "<input type=file max>",
745
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
746
+
747
+ {"description": "'step' attribute not allowed on <input type='file'>",
748
+ "input": "<input type=file step>",
749
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
750
+
751
+ {"description": "'enctype' attribute not allowed on <input type='file'>",
752
+ "input": "<input type=file enctype>",
753
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
754
+
755
+ {"description": "'src' attribute not allowed on <input type='file'>",
756
+ "input": "<input type=file src>",
757
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
758
+
759
+ {"description": "allowed 'name' attribute on <input type='file'>",
760
+ "input": "<input type=file name>",
761
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
762
+
763
+ {"description": "allowed 'required' attribute on <input type='file'>",
764
+ "input": "<input type=file required>",
765
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
766
+
767
+ {"description": "'list' attribute not allowed on <input type='file'>",
768
+ "input": "<input type=file list>",
769
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
770
+
771
+ {"description": "'value' attribute not allowed on <input type='file'>",
772
+ "input": "<input type=file value>",
773
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
774
+
775
+ {"description": "'autocomplete' attribute not allowed on <input type='file'>",
776
+ "input": "<input type=file autocomplete>",
777
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
778
+
779
+ {"description": "'inputmode' attribute not allowed on <input type='file'>",
780
+ "input": "<input type=file inputmode>",
781
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
782
+
783
+ {"description": "'maxlength' attribute not allowed on <input type='file'>",
784
+ "input": "<input type=file maxlength>",
785
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
786
+
787
+ {"description": "'action' attribute not allowed on <input type='file'>",
788
+ "input": "<input type=file action>",
789
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
790
+
791
+ {"description": "allowed 'tabindex' attribute on <input type='file'>",
792
+ "input": "<input type=file tabindex>",
793
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
794
+
795
+ {"description": "allowed 'accesskey' attribute on <input type='password'>",
796
+ "input": "<input type=password accesskey>",
797
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
798
+
799
+ {"description": "'accept' attribute not allowed on <input type='password'>",
800
+ "input": "<input type=password accept>",
801
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
802
+
803
+ {"description": "'replace' attribute not allowed on <input type='password'>",
804
+ "input": "<input type=password replace>",
805
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
806
+
807
+ {"description": "allowed 'disabled' attribute on <input type='password'>",
808
+ "input": "<input type=password disabled>",
809
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
810
+
811
+ {"description": "'alt' attribute not allowed on <input type='password'>",
812
+ "input": "<input type=password alt>",
813
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
814
+
815
+ {"description": "allowed 'size' attribute on <input type='password'>",
816
+ "input": "<input type=password size>",
817
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
818
+
819
+ {"description": "'checked' attribute not allowed on <input type='password'>",
820
+ "input": "<input type=password checked>",
821
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
822
+
823
+ {"description": "'min' attribute not allowed on <input type='password'>",
824
+ "input": "<input type=password min>",
825
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
826
+
827
+ {"description": "allowed 'pattern' attribute on <input type='password'>",
828
+ "input": "<input type=password pattern>",
829
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
830
+
831
+ {"description": "allowed 'readonly' attribute on <input type='password'>",
832
+ "input": "<input type=password readonly>",
833
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
834
+
835
+ {"description": "'template' attribute not allowed on <input type='password'>",
836
+ "input": "<input type=password template>",
837
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
838
+
839
+ {"description": "allowed 'autofocus' attribute on <input type='password'>",
840
+ "input": "<input type=password autofocus>",
841
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
842
+
843
+ {"description": "'target' attribute not allowed on <input type='password'>",
844
+ "input": "<input type=password target>",
845
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
846
+
847
+ {"description": "'method' attribute not allowed on <input type='password'>",
848
+ "input": "<input type=password method>",
849
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
850
+
851
+ {"description": "allowed 'form' attribute on <input type='password'>",
852
+ "input": "<input type=password form>",
853
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
854
+
855
+ {"description": "'max' attribute not allowed on <input type='password'>",
856
+ "input": "<input type=password max>",
857
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
858
+
859
+ {"description": "'step' attribute not allowed on <input type='password'>",
860
+ "input": "<input type=password step>",
861
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
862
+
863
+ {"description": "'enctype' attribute not allowed on <input type='password'>",
864
+ "input": "<input type=password enctype>",
865
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
866
+
867
+ {"description": "'src' attribute not allowed on <input type='password'>",
868
+ "input": "<input type=password src>",
869
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
870
+
871
+ {"description": "allowed 'name' attribute on <input type='password'>",
872
+ "input": "<input type=password name>",
873
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
874
+
875
+ {"description": "allowed 'required' attribute on <input type='password'>",
876
+ "input": "<input type=password required>",
877
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
878
+
879
+ {"description": "'list' attribute not allowed on <input type='password'>",
880
+ "input": "<input type=password list>",
881
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
882
+
883
+ {"description": "allowed 'value' attribute on <input type='password'>",
884
+ "input": "<input type=password value>",
885
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
886
+
887
+ {"description": "allowed 'autocomplete' attribute on <input type='password'>",
888
+ "input": "<input type=password autocomplete>",
889
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
890
+
891
+ {"description": "allowed 'inputmode' attribute on <input type='password'>",
892
+ "input": "<input type=password inputmode>",
893
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
894
+
895
+ {"description": "allowed 'maxlength' attribute on <input type='password'>",
896
+ "input": "<input type=password maxlength>",
897
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
898
+
899
+ {"description": "'action' attribute not allowed on <input type='password'>",
900
+ "input": "<input type=password action>",
901
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
902
+
903
+ {"description": "allowed 'tabindex' attribute on <input type='password'>",
904
+ "input": "<input type=password tabindex>",
905
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
906
+
907
+ {"description": "allowed 'accesskey' attribute on <input type='move-up'>",
908
+ "input": "<input type=move-up accesskey>",
909
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
910
+
911
+ {"description": "'accept' attribute not allowed on <input type='move-up'>",
912
+ "input": "<input type=move-up accept>",
913
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
914
+
915
+ {"description": "'replace' attribute not allowed on <input type='move-up'>",
916
+ "input": "<input type=move-up replace>",
917
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
918
+
919
+ {"description": "allowed 'disabled' attribute on <input type='move-up'>",
920
+ "input": "<input type=move-up disabled>",
921
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
922
+
923
+ {"description": "'alt' attribute not allowed on <input type='move-up'>",
924
+ "input": "<input type=move-up alt>",
925
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
926
+
927
+ {"description": "'size' attribute not allowed on <input type='move-up'>",
928
+ "input": "<input type=move-up size>",
929
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
930
+
931
+ {"description": "'checked' attribute not allowed on <input type='move-up'>",
932
+ "input": "<input type=move-up checked>",
933
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
934
+
935
+ {"description": "'min' attribute not allowed on <input type='move-up'>",
936
+ "input": "<input type=move-up min>",
937
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
938
+
939
+ {"description": "'pattern' attribute not allowed on <input type='move-up'>",
940
+ "input": "<input type=move-up pattern>",
941
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
942
+
943
+ {"description": "'readonly' attribute not allowed on <input type='move-up'>",
944
+ "input": "<input type=move-up readonly>",
945
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
946
+
947
+ {"description": "'template' attribute not allowed on <input type='move-up'>",
948
+ "input": "<input type=move-up template>",
949
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
950
+
951
+ {"description": "allowed 'autofocus' attribute on <input type='move-up'>",
952
+ "input": "<input type=move-up autofocus>",
953
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
954
+
955
+ {"description": "'target' attribute not allowed on <input type='move-up'>",
956
+ "input": "<input type=move-up target>",
957
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
958
+
959
+ {"description": "'method' attribute not allowed on <input type='move-up'>",
960
+ "input": "<input type=move-up method>",
961
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
962
+
963
+ {"description": "allowed 'form' attribute on <input type='move-up'>",
964
+ "input": "<input type=move-up form>",
965
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
966
+
967
+ {"description": "'max' attribute not allowed on <input type='move-up'>",
968
+ "input": "<input type=move-up max>",
969
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
970
+
971
+ {"description": "'step' attribute not allowed on <input type='move-up'>",
972
+ "input": "<input type=move-up step>",
973
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
974
+
975
+ {"description": "'enctype' attribute not allowed on <input type='move-up'>",
976
+ "input": "<input type=move-up enctype>",
977
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
978
+
979
+ {"description": "'src' attribute not allowed on <input type='move-up'>",
980
+ "input": "<input type=move-up src>",
981
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
982
+
983
+ {"description": "allowed 'name' attribute on <input type='move-up'>",
984
+ "input": "<input type=move-up name>",
985
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
986
+
987
+ {"description": "'required' attribute not allowed on <input type='move-up'>",
988
+ "input": "<input type=move-up required>",
989
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
990
+
991
+ {"description": "'list' attribute not allowed on <input type='move-up'>",
992
+ "input": "<input type=move-up list>",
993
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
994
+
995
+ {"description": "allowed 'value' attribute on <input type='move-up'>",
996
+ "input": "<input type=move-up value>",
997
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
998
+
999
+ {"description": "'autocomplete' attribute not allowed on <input type='move-up'>",
1000
+ "input": "<input type=move-up autocomplete>",
1001
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1002
+
1003
+ {"description": "'inputmode' attribute not allowed on <input type='move-up'>",
1004
+ "input": "<input type=move-up inputmode>",
1005
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1006
+
1007
+ {"description": "'maxlength' attribute not allowed on <input type='move-up'>",
1008
+ "input": "<input type=move-up maxlength>",
1009
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1010
+
1011
+ {"description": "'action' attribute not allowed on <input type='move-up'>",
1012
+ "input": "<input type=move-up action>",
1013
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1014
+
1015
+ {"description": "allowed 'tabindex' attribute on <input type='move-up'>",
1016
+ "input": "<input type=move-up tabindex>",
1017
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1018
+
1019
+ {"description": "allowed 'accesskey' attribute on <input type='submit'>",
1020
+ "input": "<input type=submit accesskey>",
1021
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1022
+
1023
+ {"description": "'accept' attribute not allowed on <input type='submit'>",
1024
+ "input": "<input type=submit accept>",
1025
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1026
+
1027
+ {"description": "allowed 'replace' attribute on <input type='submit'>",
1028
+ "input": "<input type=submit replace>",
1029
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1030
+
1031
+ {"description": "allowed 'disabled' attribute on <input type='submit'>",
1032
+ "input": "<input type=submit disabled>",
1033
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1034
+
1035
+ {"description": "'alt' attribute not allowed on <input type='submit'>",
1036
+ "input": "<input type=submit alt>",
1037
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1038
+
1039
+ {"description": "'size' attribute not allowed on <input type='submit'>",
1040
+ "input": "<input type=submit size>",
1041
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1042
+
1043
+ {"description": "'checked' attribute not allowed on <input type='submit'>",
1044
+ "input": "<input type=submit checked>",
1045
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1046
+
1047
+ {"description": "'min' attribute not allowed on <input type='submit'>",
1048
+ "input": "<input type=submit min>",
1049
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1050
+
1051
+ {"description": "'pattern' attribute not allowed on <input type='submit'>",
1052
+ "input": "<input type=submit pattern>",
1053
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1054
+
1055
+ {"description": "'readonly' attribute not allowed on <input type='submit'>",
1056
+ "input": "<input type=submit readonly>",
1057
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1058
+
1059
+ {"description": "'template' attribute not allowed on <input type='submit'>",
1060
+ "input": "<input type=submit template>",
1061
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1062
+
1063
+ {"description": "allowed 'autofocus' attribute on <input type='submit'>",
1064
+ "input": "<input type=submit autofocus>",
1065
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1066
+
1067
+ {"description": "allowed 'target' attribute on <input type='submit'>",
1068
+ "input": "<input type=submit target>",
1069
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1070
+
1071
+ {"description": "allowed 'method' attribute on <input type='submit'>",
1072
+ "input": "<input type=submit method>",
1073
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1074
+
1075
+ {"description": "allowed 'form' attribute on <input type='submit'>",
1076
+ "input": "<input type=submit form>",
1077
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1078
+
1079
+ {"description": "'max' attribute not allowed on <input type='submit'>",
1080
+ "input": "<input type=submit max>",
1081
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1082
+
1083
+ {"description": "'step' attribute not allowed on <input type='submit'>",
1084
+ "input": "<input type=submit step>",
1085
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1086
+
1087
+ {"description": "allowed 'enctype' attribute on <input type='submit'>",
1088
+ "input": "<input type=submit enctype>",
1089
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1090
+
1091
+ {"description": "'src' attribute not allowed on <input type='submit'>",
1092
+ "input": "<input type=submit src>",
1093
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1094
+
1095
+ {"description": "allowed 'name' attribute on <input type='submit'>",
1096
+ "input": "<input type=submit name>",
1097
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1098
+
1099
+ {"description": "'required' attribute not allowed on <input type='submit'>",
1100
+ "input": "<input type=submit required>",
1101
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1102
+
1103
+ {"description": "'list' attribute not allowed on <input type='submit'>",
1104
+ "input": "<input type=submit list>",
1105
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1106
+
1107
+ {"description": "allowed 'value' attribute on <input type='submit'>",
1108
+ "input": "<input type=submit value>",
1109
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1110
+
1111
+ {"description": "'autocomplete' attribute not allowed on <input type='submit'>",
1112
+ "input": "<input type=submit autocomplete>",
1113
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1114
+
1115
+ {"description": "'inputmode' attribute not allowed on <input type='submit'>",
1116
+ "input": "<input type=submit inputmode>",
1117
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1118
+
1119
+ {"description": "'maxlength' attribute not allowed on <input type='submit'>",
1120
+ "input": "<input type=submit maxlength>",
1121
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1122
+
1123
+ {"description": "allowed 'action' attribute on <input type='submit'>",
1124
+ "input": "<input type=submit action>",
1125
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1126
+
1127
+ {"description": "allowed 'tabindex' attribute on <input type='submit'>",
1128
+ "input": "<input type=submit tabindex>",
1129
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1130
+
1131
+ {"description": "allowed 'accesskey' attribute on <input type='add'>",
1132
+ "input": "<input type=add accesskey>",
1133
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1134
+
1135
+ {"description": "'accept' attribute not allowed on <input type='add'>",
1136
+ "input": "<input type=add accept>",
1137
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1138
+
1139
+ {"description": "'replace' attribute not allowed on <input type='add'>",
1140
+ "input": "<input type=add replace>",
1141
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1142
+
1143
+ {"description": "allowed 'disabled' attribute on <input type='add'>",
1144
+ "input": "<input type=add disabled>",
1145
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1146
+
1147
+ {"description": "'alt' attribute not allowed on <input type='add'>",
1148
+ "input": "<input type=add alt>",
1149
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1150
+
1151
+ {"description": "'size' attribute not allowed on <input type='add'>",
1152
+ "input": "<input type=add size>",
1153
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1154
+
1155
+ {"description": "'checked' attribute not allowed on <input type='add'>",
1156
+ "input": "<input type=add checked>",
1157
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1158
+
1159
+ {"description": "'min' attribute not allowed on <input type='add'>",
1160
+ "input": "<input type=add min>",
1161
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1162
+
1163
+ {"description": "'pattern' attribute not allowed on <input type='add'>",
1164
+ "input": "<input type=add pattern>",
1165
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1166
+
1167
+ {"description": "'readonly' attribute not allowed on <input type='add'>",
1168
+ "input": "<input type=add readonly>",
1169
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1170
+
1171
+ {"description": "allowed 'template' attribute on <input type='add'>",
1172
+ "input": "<input type=add template>",
1173
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1174
+
1175
+ {"description": "allowed 'autofocus' attribute on <input type='add'>",
1176
+ "input": "<input type=add autofocus>",
1177
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1178
+
1179
+ {"description": "'target' attribute not allowed on <input type='add'>",
1180
+ "input": "<input type=add target>",
1181
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1182
+
1183
+ {"description": "'method' attribute not allowed on <input type='add'>",
1184
+ "input": "<input type=add method>",
1185
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1186
+
1187
+ {"description": "allowed 'form' attribute on <input type='add'>",
1188
+ "input": "<input type=add form>",
1189
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1190
+
1191
+ {"description": "'max' attribute not allowed on <input type='add'>",
1192
+ "input": "<input type=add max>",
1193
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1194
+
1195
+ {"description": "'step' attribute not allowed on <input type='add'>",
1196
+ "input": "<input type=add step>",
1197
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1198
+
1199
+ {"description": "'enctype' attribute not allowed on <input type='add'>",
1200
+ "input": "<input type=add enctype>",
1201
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1202
+
1203
+ {"description": "'src' attribute not allowed on <input type='add'>",
1204
+ "input": "<input type=add src>",
1205
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1206
+
1207
+ {"description": "allowed 'name' attribute on <input type='add'>",
1208
+ "input": "<input type=add name>",
1209
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1210
+
1211
+ {"description": "'required' attribute not allowed on <input type='add'>",
1212
+ "input": "<input type=add required>",
1213
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1214
+
1215
+ {"description": "'list' attribute not allowed on <input type='add'>",
1216
+ "input": "<input type=add list>",
1217
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1218
+
1219
+ {"description": "allowed 'value' attribute on <input type='add'>",
1220
+ "input": "<input type=add value>",
1221
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1222
+
1223
+ {"description": "'autocomplete' attribute not allowed on <input type='add'>",
1224
+ "input": "<input type=add autocomplete>",
1225
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1226
+
1227
+ {"description": "'inputmode' attribute not allowed on <input type='add'>",
1228
+ "input": "<input type=add inputmode>",
1229
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1230
+
1231
+ {"description": "'maxlength' attribute not allowed on <input type='add'>",
1232
+ "input": "<input type=add maxlength>",
1233
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1234
+
1235
+ {"description": "'action' attribute not allowed on <input type='add'>",
1236
+ "input": "<input type=add action>",
1237
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1238
+
1239
+ {"description": "allowed 'tabindex' attribute on <input type='add'>",
1240
+ "input": "<input type=add tabindex>",
1241
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1242
+
1243
+ {"description": "'accesskey' attribute not allowed on <input type='hidden'>",
1244
+ "input": "<input type=hidden accesskey>",
1245
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1246
+
1247
+ {"description": "'accept' attribute not allowed on <input type='hidden'>",
1248
+ "input": "<input type=hidden accept>",
1249
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1250
+
1251
+ {"description": "'replace' attribute not allowed on <input type='hidden'>",
1252
+ "input": "<input type=hidden replace>",
1253
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1254
+
1255
+ {"description": "allowed 'disabled' attribute on <input type='hidden'>",
1256
+ "input": "<input type=hidden disabled>",
1257
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1258
+
1259
+ {"description": "'alt' attribute not allowed on <input type='hidden'>",
1260
+ "input": "<input type=hidden alt>",
1261
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1262
+
1263
+ {"description": "'size' attribute not allowed on <input type='hidden'>",
1264
+ "input": "<input type=hidden size>",
1265
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1266
+
1267
+ {"description": "'checked' attribute not allowed on <input type='hidden'>",
1268
+ "input": "<input type=hidden checked>",
1269
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1270
+
1271
+ {"description": "'min' attribute not allowed on <input type='hidden'>",
1272
+ "input": "<input type=hidden min>",
1273
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1274
+
1275
+ {"description": "'pattern' attribute not allowed on <input type='hidden'>",
1276
+ "input": "<input type=hidden pattern>",
1277
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1278
+
1279
+ {"description": "'readonly' attribute not allowed on <input type='hidden'>",
1280
+ "input": "<input type=hidden readonly>",
1281
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1282
+
1283
+ {"description": "'template' attribute not allowed on <input type='hidden'>",
1284
+ "input": "<input type=hidden template>",
1285
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1286
+
1287
+ {"description": "'autofocus' attribute not allowed on <input type='hidden'>",
1288
+ "input": "<input type=hidden autofocus>",
1289
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1290
+
1291
+ {"description": "'target' attribute not allowed on <input type='hidden'>",
1292
+ "input": "<input type=hidden target>",
1293
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1294
+
1295
+ {"description": "'method' attribute not allowed on <input type='hidden'>",
1296
+ "input": "<input type=hidden method>",
1297
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1298
+
1299
+ {"description": "allowed 'form' attribute on <input type='hidden'>",
1300
+ "input": "<input type=hidden form>",
1301
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1302
+
1303
+ {"description": "'max' attribute not allowed on <input type='hidden'>",
1304
+ "input": "<input type=hidden max>",
1305
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1306
+
1307
+ {"description": "'step' attribute not allowed on <input type='hidden'>",
1308
+ "input": "<input type=hidden step>",
1309
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1310
+
1311
+ {"description": "'enctype' attribute not allowed on <input type='hidden'>",
1312
+ "input": "<input type=hidden enctype>",
1313
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1314
+
1315
+ {"description": "'src' attribute not allowed on <input type='hidden'>",
1316
+ "input": "<input type=hidden src>",
1317
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1318
+
1319
+ {"description": "allowed 'name' attribute on <input type='hidden'>",
1320
+ "input": "<input type=hidden name>",
1321
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1322
+
1323
+ {"description": "'required' attribute not allowed on <input type='hidden'>",
1324
+ "input": "<input type=hidden required>",
1325
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1326
+
1327
+ {"description": "'list' attribute not allowed on <input type='hidden'>",
1328
+ "input": "<input type=hidden list>",
1329
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1330
+
1331
+ {"description": "allowed 'value' attribute on <input type='hidden'>",
1332
+ "input": "<input type=hidden value>",
1333
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1334
+
1335
+ {"description": "'autocomplete' attribute not allowed on <input type='hidden'>",
1336
+ "input": "<input type=hidden autocomplete>",
1337
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1338
+
1339
+ {"description": "'inputmode' attribute not allowed on <input type='hidden'>",
1340
+ "input": "<input type=hidden inputmode>",
1341
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1342
+
1343
+ {"description": "'maxlength' attribute not allowed on <input type='hidden'>",
1344
+ "input": "<input type=hidden maxlength>",
1345
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1346
+
1347
+ {"description": "'action' attribute not allowed on <input type='hidden'>",
1348
+ "input": "<input type=hidden action>",
1349
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1350
+
1351
+ {"description": "'tabindex' attribute not allowed on <input type='hidden'>",
1352
+ "input": "<input type=hidden tabindex>",
1353
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1354
+
1355
+ {"description": "allowed 'accesskey' attribute on <input type='email'>",
1356
+ "input": "<input type=email accesskey>",
1357
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1358
+
1359
+ {"description": "'accept' attribute not allowed on <input type='email'>",
1360
+ "input": "<input type=email accept>",
1361
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1362
+
1363
+ {"description": "'replace' attribute not allowed on <input type='email'>",
1364
+ "input": "<input type=email replace>",
1365
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1366
+
1367
+ {"description": "allowed 'disabled' attribute on <input type='email'>",
1368
+ "input": "<input type=email disabled>",
1369
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1370
+
1371
+ {"description": "'alt' attribute not allowed on <input type='email'>",
1372
+ "input": "<input type=email alt>",
1373
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1374
+
1375
+ {"description": "'size' attribute not allowed on <input type='email'>",
1376
+ "input": "<input type=email size>",
1377
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1378
+
1379
+ {"description": "'checked' attribute not allowed on <input type='email'>",
1380
+ "input": "<input type=email checked>",
1381
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1382
+
1383
+ {"description": "'min' attribute not allowed on <input type='email'>",
1384
+ "input": "<input type=email min>",
1385
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1386
+
1387
+ {"description": "allowed 'pattern' attribute on <input type='email'>",
1388
+ "input": "<input type=email pattern>",
1389
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1390
+
1391
+ {"description": "allowed 'readonly' attribute on <input type='email'>",
1392
+ "input": "<input type=email readonly>",
1393
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1394
+
1395
+ {"description": "'template' attribute not allowed on <input type='email'>",
1396
+ "input": "<input type=email template>",
1397
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1398
+
1399
+ {"description": "allowed 'autofocus' attribute on <input type='email'>",
1400
+ "input": "<input type=email autofocus>",
1401
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1402
+
1403
+ {"description": "'target' attribute not allowed on <input type='email'>",
1404
+ "input": "<input type=email target>",
1405
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1406
+
1407
+ {"description": "'method' attribute not allowed on <input type='email'>",
1408
+ "input": "<input type=email method>",
1409
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1410
+
1411
+ {"description": "allowed 'form' attribute on <input type='email'>",
1412
+ "input": "<input type=email form>",
1413
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1414
+
1415
+ {"description": "'max' attribute not allowed on <input type='email'>",
1416
+ "input": "<input type=email max>",
1417
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1418
+
1419
+ {"description": "'step' attribute not allowed on <input type='email'>",
1420
+ "input": "<input type=email step>",
1421
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1422
+
1423
+ {"description": "'enctype' attribute not allowed on <input type='email'>",
1424
+ "input": "<input type=email enctype>",
1425
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1426
+
1427
+ {"description": "'src' attribute not allowed on <input type='email'>",
1428
+ "input": "<input type=email src>",
1429
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1430
+
1431
+ {"description": "allowed 'name' attribute on <input type='email'>",
1432
+ "input": "<input type=email name>",
1433
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1434
+
1435
+ {"description": "allowed 'required' attribute on <input type='email'>",
1436
+ "input": "<input type=email required>",
1437
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1438
+
1439
+ {"description": "allowed 'list' attribute on <input type='email'>",
1440
+ "input": "<input type=email list>",
1441
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1442
+
1443
+ {"description": "allowed 'value' attribute on <input type='email'>",
1444
+ "input": "<input type=email value>",
1445
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1446
+
1447
+ {"description": "allowed 'autocomplete' attribute on <input type='email'>",
1448
+ "input": "<input type=email autocomplete>",
1449
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1450
+
1451
+ {"description": "allowed 'inputmode' attribute on <input type='email'>",
1452
+ "input": "<input type=email inputmode>",
1453
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1454
+
1455
+ {"description": "allowed 'maxlength' attribute on <input type='email'>",
1456
+ "input": "<input type=email maxlength>",
1457
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1458
+
1459
+ {"description": "'action' attribute not allowed on <input type='email'>",
1460
+ "input": "<input type=email action>",
1461
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1462
+
1463
+ {"description": "allowed 'tabindex' attribute on <input type='email'>",
1464
+ "input": "<input type=email tabindex>",
1465
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1466
+
1467
+ {"description": "allowed 'accesskey' attribute on <input type='week'>",
1468
+ "input": "<input type=week accesskey>",
1469
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1470
+
1471
+ {"description": "'accept' attribute not allowed on <input type='week'>",
1472
+ "input": "<input type=week accept>",
1473
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1474
+
1475
+ {"description": "'replace' attribute not allowed on <input type='week'>",
1476
+ "input": "<input type=week replace>",
1477
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1478
+
1479
+ {"description": "allowed 'disabled' attribute on <input type='week'>",
1480
+ "input": "<input type=week disabled>",
1481
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1482
+
1483
+ {"description": "'alt' attribute not allowed on <input type='week'>",
1484
+ "input": "<input type=week alt>",
1485
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1486
+
1487
+ {"description": "'size' attribute not allowed on <input type='week'>",
1488
+ "input": "<input type=week size>",
1489
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1490
+
1491
+ {"description": "'checked' attribute not allowed on <input type='week'>",
1492
+ "input": "<input type=week checked>",
1493
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1494
+
1495
+ {"description": "allowed 'min' attribute on <input type='week'>",
1496
+ "input": "<input type=week min>",
1497
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1498
+
1499
+ {"description": "'pattern' attribute not allowed on <input type='week'>",
1500
+ "input": "<input type=week pattern>",
1501
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1502
+
1503
+ {"description": "allowed 'readonly' attribute on <input type='week'>",
1504
+ "input": "<input type=week readonly>",
1505
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1506
+
1507
+ {"description": "'template' attribute not allowed on <input type='week'>",
1508
+ "input": "<input type=week template>",
1509
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1510
+
1511
+ {"description": "allowed 'autofocus' attribute on <input type='week'>",
1512
+ "input": "<input type=week autofocus>",
1513
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1514
+
1515
+ {"description": "'target' attribute not allowed on <input type='week'>",
1516
+ "input": "<input type=week target>",
1517
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1518
+
1519
+ {"description": "'method' attribute not allowed on <input type='week'>",
1520
+ "input": "<input type=week method>",
1521
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1522
+
1523
+ {"description": "allowed 'form' attribute on <input type='week'>",
1524
+ "input": "<input type=week form>",
1525
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1526
+
1527
+ {"description": "allowed 'max' attribute on <input type='week'>",
1528
+ "input": "<input type=week max>",
1529
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1530
+
1531
+ {"description": "allowed 'step' attribute on <input type='week'>",
1532
+ "input": "<input type=week step>",
1533
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1534
+
1535
+ {"description": "'enctype' attribute not allowed on <input type='week'>",
1536
+ "input": "<input type=week enctype>",
1537
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1538
+
1539
+ {"description": "'src' attribute not allowed on <input type='week'>",
1540
+ "input": "<input type=week src>",
1541
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1542
+
1543
+ {"description": "allowed 'name' attribute on <input type='week'>",
1544
+ "input": "<input type=week name>",
1545
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1546
+
1547
+ {"description": "allowed 'required' attribute on <input type='week'>",
1548
+ "input": "<input type=week required>",
1549
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1550
+
1551
+ {"description": "allowed 'list' attribute on <input type='week'>",
1552
+ "input": "<input type=week list>",
1553
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1554
+
1555
+ {"description": "allowed 'value' attribute on <input type='week'>",
1556
+ "input": "<input type=week value>",
1557
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1558
+
1559
+ {"description": "allowed 'autocomplete' attribute on <input type='week'>",
1560
+ "input": "<input type=week autocomplete>",
1561
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1562
+
1563
+ {"description": "'inputmode' attribute not allowed on <input type='week'>",
1564
+ "input": "<input type=week inputmode>",
1565
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1566
+
1567
+ {"description": "'maxlength' attribute not allowed on <input type='week'>",
1568
+ "input": "<input type=week maxlength>",
1569
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1570
+
1571
+ {"description": "'action' attribute not allowed on <input type='week'>",
1572
+ "input": "<input type=week action>",
1573
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1574
+
1575
+ {"description": "allowed 'tabindex' attribute on <input type='week'>",
1576
+ "input": "<input type=week tabindex>",
1577
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1578
+
1579
+ {"description": "allowed 'accesskey' attribute on <input type='date'>",
1580
+ "input": "<input type=date accesskey>",
1581
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1582
+
1583
+ {"description": "'accept' attribute not allowed on <input type='date'>",
1584
+ "input": "<input type=date accept>",
1585
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1586
+
1587
+ {"description": "'replace' attribute not allowed on <input type='date'>",
1588
+ "input": "<input type=date replace>",
1589
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1590
+
1591
+ {"description": "allowed 'disabled' attribute on <input type='date'>",
1592
+ "input": "<input type=date disabled>",
1593
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1594
+
1595
+ {"description": "'alt' attribute not allowed on <input type='date'>",
1596
+ "input": "<input type=date alt>",
1597
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1598
+
1599
+ {"description": "'size' attribute not allowed on <input type='date'>",
1600
+ "input": "<input type=date size>",
1601
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1602
+
1603
+ {"description": "'checked' attribute not allowed on <input type='date'>",
1604
+ "input": "<input type=date checked>",
1605
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1606
+
1607
+ {"description": "allowed 'min' attribute on <input type='date'>",
1608
+ "input": "<input type=date min>",
1609
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1610
+
1611
+ {"description": "'pattern' attribute not allowed on <input type='date'>",
1612
+ "input": "<input type=date pattern>",
1613
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1614
+
1615
+ {"description": "allowed 'readonly' attribute on <input type='date'>",
1616
+ "input": "<input type=date readonly>",
1617
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1618
+
1619
+ {"description": "'template' attribute not allowed on <input type='date'>",
1620
+ "input": "<input type=date template>",
1621
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1622
+
1623
+ {"description": "allowed 'autofocus' attribute on <input type='date'>",
1624
+ "input": "<input type=date autofocus>",
1625
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1626
+
1627
+ {"description": "'target' attribute not allowed on <input type='date'>",
1628
+ "input": "<input type=date target>",
1629
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1630
+
1631
+ {"description": "'method' attribute not allowed on <input type='date'>",
1632
+ "input": "<input type=date method>",
1633
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1634
+
1635
+ {"description": "allowed 'form' attribute on <input type='date'>",
1636
+ "input": "<input type=date form>",
1637
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1638
+
1639
+ {"description": "allowed 'max' attribute on <input type='date'>",
1640
+ "input": "<input type=date max>",
1641
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1642
+
1643
+ {"description": "allowed 'step' attribute on <input type='date'>",
1644
+ "input": "<input type=date step>",
1645
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1646
+
1647
+ {"description": "'enctype' attribute not allowed on <input type='date'>",
1648
+ "input": "<input type=date enctype>",
1649
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1650
+
1651
+ {"description": "'src' attribute not allowed on <input type='date'>",
1652
+ "input": "<input type=date src>",
1653
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1654
+
1655
+ {"description": "allowed 'name' attribute on <input type='date'>",
1656
+ "input": "<input type=date name>",
1657
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1658
+
1659
+ {"description": "allowed 'required' attribute on <input type='date'>",
1660
+ "input": "<input type=date required>",
1661
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1662
+
1663
+ {"description": "allowed 'list' attribute on <input type='date'>",
1664
+ "input": "<input type=date list>",
1665
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1666
+
1667
+ {"description": "allowed 'value' attribute on <input type='date'>",
1668
+ "input": "<input type=date value>",
1669
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1670
+
1671
+ {"description": "allowed 'autocomplete' attribute on <input type='date'>",
1672
+ "input": "<input type=date autocomplete>",
1673
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1674
+
1675
+ {"description": "'inputmode' attribute not allowed on <input type='date'>",
1676
+ "input": "<input type=date inputmode>",
1677
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1678
+
1679
+ {"description": "'maxlength' attribute not allowed on <input type='date'>",
1680
+ "input": "<input type=date maxlength>",
1681
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1682
+
1683
+ {"description": "'action' attribute not allowed on <input type='date'>",
1684
+ "input": "<input type=date action>",
1685
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1686
+
1687
+ {"description": "allowed 'tabindex' attribute on <input type='date'>",
1688
+ "input": "<input type=date tabindex>",
1689
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1690
+
1691
+ {"description": "allowed 'accesskey' attribute on <input type='datetime'>",
1692
+ "input": "<input type=datetime accesskey>",
1693
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1694
+
1695
+ {"description": "'accept' attribute not allowed on <input type='datetime'>",
1696
+ "input": "<input type=datetime accept>",
1697
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1698
+
1699
+ {"description": "'replace' attribute not allowed on <input type='datetime'>",
1700
+ "input": "<input type=datetime replace>",
1701
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1702
+
1703
+ {"description": "allowed 'disabled' attribute on <input type='datetime'>",
1704
+ "input": "<input type=datetime disabled>",
1705
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1706
+
1707
+ {"description": "'alt' attribute not allowed on <input type='datetime'>",
1708
+ "input": "<input type=datetime alt>",
1709
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1710
+
1711
+ {"description": "'size' attribute not allowed on <input type='datetime'>",
1712
+ "input": "<input type=datetime size>",
1713
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1714
+
1715
+ {"description": "'checked' attribute not allowed on <input type='datetime'>",
1716
+ "input": "<input type=datetime checked>",
1717
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1718
+
1719
+ {"description": "allowed 'min' attribute on <input type='datetime'>",
1720
+ "input": "<input type=datetime min>",
1721
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1722
+
1723
+ {"description": "'pattern' attribute not allowed on <input type='datetime'>",
1724
+ "input": "<input type=datetime pattern>",
1725
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1726
+
1727
+ {"description": "allowed 'readonly' attribute on <input type='datetime'>",
1728
+ "input": "<input type=datetime readonly>",
1729
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1730
+
1731
+ {"description": "'template' attribute not allowed on <input type='datetime'>",
1732
+ "input": "<input type=datetime template>",
1733
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1734
+
1735
+ {"description": "allowed 'autofocus' attribute on <input type='datetime'>",
1736
+ "input": "<input type=datetime autofocus>",
1737
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1738
+
1739
+ {"description": "'target' attribute not allowed on <input type='datetime'>",
1740
+ "input": "<input type=datetime target>",
1741
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1742
+
1743
+ {"description": "'method' attribute not allowed on <input type='datetime'>",
1744
+ "input": "<input type=datetime method>",
1745
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1746
+
1747
+ {"description": "allowed 'form' attribute on <input type='datetime'>",
1748
+ "input": "<input type=datetime form>",
1749
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1750
+
1751
+ {"description": "allowed 'max' attribute on <input type='datetime'>",
1752
+ "input": "<input type=datetime max>",
1753
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1754
+
1755
+ {"description": "allowed 'step' attribute on <input type='datetime'>",
1756
+ "input": "<input type=datetime step>",
1757
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1758
+
1759
+ {"description": "'enctype' attribute not allowed on <input type='datetime'>",
1760
+ "input": "<input type=datetime enctype>",
1761
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1762
+
1763
+ {"description": "'src' attribute not allowed on <input type='datetime'>",
1764
+ "input": "<input type=datetime src>",
1765
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1766
+
1767
+ {"description": "allowed 'name' attribute on <input type='datetime'>",
1768
+ "input": "<input type=datetime name>",
1769
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1770
+
1771
+ {"description": "allowed 'required' attribute on <input type='datetime'>",
1772
+ "input": "<input type=datetime required>",
1773
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1774
+
1775
+ {"description": "allowed 'list' attribute on <input type='datetime'>",
1776
+ "input": "<input type=datetime list>",
1777
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1778
+
1779
+ {"description": "allowed 'value' attribute on <input type='datetime'>",
1780
+ "input": "<input type=datetime value>",
1781
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1782
+
1783
+ {"description": "allowed 'autocomplete' attribute on <input type='datetime'>",
1784
+ "input": "<input type=datetime autocomplete>",
1785
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1786
+
1787
+ {"description": "'inputmode' attribute not allowed on <input type='datetime'>",
1788
+ "input": "<input type=datetime inputmode>",
1789
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1790
+
1791
+ {"description": "'maxlength' attribute not allowed on <input type='datetime'>",
1792
+ "input": "<input type=datetime maxlength>",
1793
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1794
+
1795
+ {"description": "'action' attribute not allowed on <input type='datetime'>",
1796
+ "input": "<input type=datetime action>",
1797
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1798
+
1799
+ {"description": "allowed 'tabindex' attribute on <input type='datetime'>",
1800
+ "input": "<input type=datetime tabindex>",
1801
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1802
+
1803
+ {"description": "allowed 'accesskey' attribute on <input type='move-down'>",
1804
+ "input": "<input type=move-down accesskey>",
1805
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1806
+
1807
+ {"description": "'accept' attribute not allowed on <input type='move-down'>",
1808
+ "input": "<input type=move-down accept>",
1809
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1810
+
1811
+ {"description": "'replace' attribute not allowed on <input type='move-down'>",
1812
+ "input": "<input type=move-down replace>",
1813
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1814
+
1815
+ {"description": "allowed 'disabled' attribute on <input type='move-down'>",
1816
+ "input": "<input type=move-down disabled>",
1817
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1818
+
1819
+ {"description": "'alt' attribute not allowed on <input type='move-down'>",
1820
+ "input": "<input type=move-down alt>",
1821
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1822
+
1823
+ {"description": "'size' attribute not allowed on <input type='move-down'>",
1824
+ "input": "<input type=move-down size>",
1825
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1826
+
1827
+ {"description": "'checked' attribute not allowed on <input type='move-down'>",
1828
+ "input": "<input type=move-down checked>",
1829
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1830
+
1831
+ {"description": "'min' attribute not allowed on <input type='move-down'>",
1832
+ "input": "<input type=move-down min>",
1833
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1834
+
1835
+ {"description": "'pattern' attribute not allowed on <input type='move-down'>",
1836
+ "input": "<input type=move-down pattern>",
1837
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1838
+
1839
+ {"description": "'readonly' attribute not allowed on <input type='move-down'>",
1840
+ "input": "<input type=move-down readonly>",
1841
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1842
+
1843
+ {"description": "'template' attribute not allowed on <input type='move-down'>",
1844
+ "input": "<input type=move-down template>",
1845
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1846
+
1847
+ {"description": "allowed 'autofocus' attribute on <input type='move-down'>",
1848
+ "input": "<input type=move-down autofocus>",
1849
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1850
+
1851
+ {"description": "'target' attribute not allowed on <input type='move-down'>",
1852
+ "input": "<input type=move-down target>",
1853
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1854
+
1855
+ {"description": "'method' attribute not allowed on <input type='move-down'>",
1856
+ "input": "<input type=move-down method>",
1857
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1858
+
1859
+ {"description": "allowed 'form' attribute on <input type='move-down'>",
1860
+ "input": "<input type=move-down form>",
1861
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1862
+
1863
+ {"description": "'max' attribute not allowed on <input type='move-down'>",
1864
+ "input": "<input type=move-down max>",
1865
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1866
+
1867
+ {"description": "'step' attribute not allowed on <input type='move-down'>",
1868
+ "input": "<input type=move-down step>",
1869
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1870
+
1871
+ {"description": "'enctype' attribute not allowed on <input type='move-down'>",
1872
+ "input": "<input type=move-down enctype>",
1873
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1874
+
1875
+ {"description": "'src' attribute not allowed on <input type='move-down'>",
1876
+ "input": "<input type=move-down src>",
1877
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1878
+
1879
+ {"description": "allowed 'name' attribute on <input type='move-down'>",
1880
+ "input": "<input type=move-down name>",
1881
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1882
+
1883
+ {"description": "'required' attribute not allowed on <input type='move-down'>",
1884
+ "input": "<input type=move-down required>",
1885
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1886
+
1887
+ {"description": "'list' attribute not allowed on <input type='move-down'>",
1888
+ "input": "<input type=move-down list>",
1889
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1890
+
1891
+ {"description": "allowed 'value' attribute on <input type='move-down'>",
1892
+ "input": "<input type=move-down value>",
1893
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1894
+
1895
+ {"description": "'autocomplete' attribute not allowed on <input type='move-down'>",
1896
+ "input": "<input type=move-down autocomplete>",
1897
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1898
+
1899
+ {"description": "'inputmode' attribute not allowed on <input type='move-down'>",
1900
+ "input": "<input type=move-down inputmode>",
1901
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1902
+
1903
+ {"description": "'maxlength' attribute not allowed on <input type='move-down'>",
1904
+ "input": "<input type=move-down maxlength>",
1905
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1906
+
1907
+ {"description": "'action' attribute not allowed on <input type='move-down'>",
1908
+ "input": "<input type=move-down action>",
1909
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1910
+
1911
+ {"description": "allowed 'tabindex' attribute on <input type='move-down'>",
1912
+ "input": "<input type=move-down tabindex>",
1913
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1914
+
1915
+ {"description": "allowed 'accesskey' attribute on <input type='datetime-local'>",
1916
+ "input": "<input type=datetime-local accesskey>",
1917
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1918
+
1919
+ {"description": "'accept' attribute not allowed on <input type='datetime-local'>",
1920
+ "input": "<input type=datetime-local accept>",
1921
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1922
+
1923
+ {"description": "'replace' attribute not allowed on <input type='datetime-local'>",
1924
+ "input": "<input type=datetime-local replace>",
1925
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1926
+
1927
+ {"description": "allowed 'disabled' attribute on <input type='datetime-local'>",
1928
+ "input": "<input type=datetime-local disabled>",
1929
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1930
+
1931
+ {"description": "'alt' attribute not allowed on <input type='datetime-local'>",
1932
+ "input": "<input type=datetime-local alt>",
1933
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1934
+
1935
+ {"description": "'size' attribute not allowed on <input type='datetime-local'>",
1936
+ "input": "<input type=datetime-local size>",
1937
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1938
+
1939
+ {"description": "'checked' attribute not allowed on <input type='datetime-local'>",
1940
+ "input": "<input type=datetime-local checked>",
1941
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1942
+
1943
+ {"description": "allowed 'min' attribute on <input type='datetime-local'>",
1944
+ "input": "<input type=datetime-local min>",
1945
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1946
+
1947
+ {"description": "'pattern' attribute not allowed on <input type='datetime-local'>",
1948
+ "input": "<input type=datetime-local pattern>",
1949
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1950
+
1951
+ {"description": "allowed 'readonly' attribute on <input type='datetime-local'>",
1952
+ "input": "<input type=datetime-local readonly>",
1953
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1954
+
1955
+ {"description": "'template' attribute not allowed on <input type='datetime-local'>",
1956
+ "input": "<input type=datetime-local template>",
1957
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1958
+
1959
+ {"description": "allowed 'autofocus' attribute on <input type='datetime-local'>",
1960
+ "input": "<input type=datetime-local autofocus>",
1961
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1962
+
1963
+ {"description": "'target' attribute not allowed on <input type='datetime-local'>",
1964
+ "input": "<input type=datetime-local target>",
1965
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1966
+
1967
+ {"description": "'method' attribute not allowed on <input type='datetime-local'>",
1968
+ "input": "<input type=datetime-local method>",
1969
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1970
+
1971
+ {"description": "allowed 'form' attribute on <input type='datetime-local'>",
1972
+ "input": "<input type=datetime-local form>",
1973
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1974
+
1975
+ {"description": "allowed 'max' attribute on <input type='datetime-local'>",
1976
+ "input": "<input type=datetime-local max>",
1977
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1978
+
1979
+ {"description": "allowed 'step' attribute on <input type='datetime-local'>",
1980
+ "input": "<input type=datetime-local step>",
1981
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1982
+
1983
+ {"description": "'enctype' attribute not allowed on <input type='datetime-local'>",
1984
+ "input": "<input type=datetime-local enctype>",
1985
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1986
+
1987
+ {"description": "'src' attribute not allowed on <input type='datetime-local'>",
1988
+ "input": "<input type=datetime-local src>",
1989
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
1990
+
1991
+ {"description": "allowed 'name' attribute on <input type='datetime-local'>",
1992
+ "input": "<input type=datetime-local name>",
1993
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1994
+
1995
+ {"description": "allowed 'required' attribute on <input type='datetime-local'>",
1996
+ "input": "<input type=datetime-local required>",
1997
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
1998
+
1999
+ {"description": "allowed 'list' attribute on <input type='datetime-local'>",
2000
+ "input": "<input type=datetime-local list>",
2001
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2002
+
2003
+ {"description": "allowed 'value' attribute on <input type='datetime-local'>",
2004
+ "input": "<input type=datetime-local value>",
2005
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2006
+
2007
+ {"description": "allowed 'autocomplete' attribute on <input type='datetime-local'>",
2008
+ "input": "<input type=datetime-local autocomplete>",
2009
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2010
+
2011
+ {"description": "'inputmode' attribute not allowed on <input type='datetime-local'>",
2012
+ "input": "<input type=datetime-local inputmode>",
2013
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2014
+
2015
+ {"description": "'maxlength' attribute not allowed on <input type='datetime-local'>",
2016
+ "input": "<input type=datetime-local maxlength>",
2017
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2018
+
2019
+ {"description": "'action' attribute not allowed on <input type='datetime-local'>",
2020
+ "input": "<input type=datetime-local action>",
2021
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2022
+
2023
+ {"description": "allowed 'tabindex' attribute on <input type='datetime-local'>",
2024
+ "input": "<input type=datetime-local tabindex>",
2025
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2026
+
2027
+ {"description": "allowed 'accesskey' attribute on <input type='reset'>",
2028
+ "input": "<input type=reset accesskey>",
2029
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2030
+
2031
+ {"description": "'accept' attribute not allowed on <input type='reset'>",
2032
+ "input": "<input type=reset accept>",
2033
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2034
+
2035
+ {"description": "'replace' attribute not allowed on <input type='reset'>",
2036
+ "input": "<input type=reset replace>",
2037
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2038
+
2039
+ {"description": "allowed 'disabled' attribute on <input type='reset'>",
2040
+ "input": "<input type=reset disabled>",
2041
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2042
+
2043
+ {"description": "'alt' attribute not allowed on <input type='reset'>",
2044
+ "input": "<input type=reset alt>",
2045
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2046
+
2047
+ {"description": "'size' attribute not allowed on <input type='reset'>",
2048
+ "input": "<input type=reset size>",
2049
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2050
+
2051
+ {"description": "'checked' attribute not allowed on <input type='reset'>",
2052
+ "input": "<input type=reset checked>",
2053
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2054
+
2055
+ {"description": "'min' attribute not allowed on <input type='reset'>",
2056
+ "input": "<input type=reset min>",
2057
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2058
+
2059
+ {"description": "'pattern' attribute not allowed on <input type='reset'>",
2060
+ "input": "<input type=reset pattern>",
2061
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2062
+
2063
+ {"description": "'readonly' attribute not allowed on <input type='reset'>",
2064
+ "input": "<input type=reset readonly>",
2065
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2066
+
2067
+ {"description": "'template' attribute not allowed on <input type='reset'>",
2068
+ "input": "<input type=reset template>",
2069
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2070
+
2071
+ {"description": "allowed 'autofocus' attribute on <input type='reset'>",
2072
+ "input": "<input type=reset autofocus>",
2073
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2074
+
2075
+ {"description": "'target' attribute not allowed on <input type='reset'>",
2076
+ "input": "<input type=reset target>",
2077
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2078
+
2079
+ {"description": "'method' attribute not allowed on <input type='reset'>",
2080
+ "input": "<input type=reset method>",
2081
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2082
+
2083
+ {"description": "allowed 'form' attribute on <input type='reset'>",
2084
+ "input": "<input type=reset form>",
2085
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2086
+
2087
+ {"description": "'max' attribute not allowed on <input type='reset'>",
2088
+ "input": "<input type=reset max>",
2089
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2090
+
2091
+ {"description": "'step' attribute not allowed on <input type='reset'>",
2092
+ "input": "<input type=reset step>",
2093
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2094
+
2095
+ {"description": "'enctype' attribute not allowed on <input type='reset'>",
2096
+ "input": "<input type=reset enctype>",
2097
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2098
+
2099
+ {"description": "'src' attribute not allowed on <input type='reset'>",
2100
+ "input": "<input type=reset src>",
2101
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2102
+
2103
+ {"description": "allowed 'name' attribute on <input type='reset'>",
2104
+ "input": "<input type=reset name>",
2105
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2106
+
2107
+ {"description": "'required' attribute not allowed on <input type='reset'>",
2108
+ "input": "<input type=reset required>",
2109
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2110
+
2111
+ {"description": "'list' attribute not allowed on <input type='reset'>",
2112
+ "input": "<input type=reset list>",
2113
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2114
+
2115
+ {"description": "allowed 'value' attribute on <input type='reset'>",
2116
+ "input": "<input type=reset value>",
2117
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2118
+
2119
+ {"description": "'autocomplete' attribute not allowed on <input type='reset'>",
2120
+ "input": "<input type=reset autocomplete>",
2121
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2122
+
2123
+ {"description": "'inputmode' attribute not allowed on <input type='reset'>",
2124
+ "input": "<input type=reset inputmode>",
2125
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2126
+
2127
+ {"description": "'maxlength' attribute not allowed on <input type='reset'>",
2128
+ "input": "<input type=reset maxlength>",
2129
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2130
+
2131
+ {"description": "'action' attribute not allowed on <input type='reset'>",
2132
+ "input": "<input type=reset action>",
2133
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2134
+
2135
+ {"description": "allowed 'tabindex' attribute on <input type='reset'>",
2136
+ "input": "<input type=reset tabindex>",
2137
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2138
+
2139
+ {"description": "allowed 'accesskey' attribute on <input type='url'>",
2140
+ "input": "<input type=url accesskey>",
2141
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2142
+
2143
+ {"description": "'accept' attribute not allowed on <input type='url'>",
2144
+ "input": "<input type=url accept>",
2145
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2146
+
2147
+ {"description": "'replace' attribute not allowed on <input type='url'>",
2148
+ "input": "<input type=url replace>",
2149
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2150
+
2151
+ {"description": "allowed 'disabled' attribute on <input type='url'>",
2152
+ "input": "<input type=url disabled>",
2153
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2154
+
2155
+ {"description": "'alt' attribute not allowed on <input type='url'>",
2156
+ "input": "<input type=url alt>",
2157
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2158
+
2159
+ {"description": "'size' attribute not allowed on <input type='url'>",
2160
+ "input": "<input type=url size>",
2161
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2162
+
2163
+ {"description": "'checked' attribute not allowed on <input type='url'>",
2164
+ "input": "<input type=url checked>",
2165
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2166
+
2167
+ {"description": "'min' attribute not allowed on <input type='url'>",
2168
+ "input": "<input type=url min>",
2169
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2170
+
2171
+ {"description": "allowed 'pattern' attribute on <input type='url'>",
2172
+ "input": "<input type=url pattern>",
2173
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2174
+
2175
+ {"description": "allowed 'readonly' attribute on <input type='url'>",
2176
+ "input": "<input type=url readonly>",
2177
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2178
+
2179
+ {"description": "'template' attribute not allowed on <input type='url'>",
2180
+ "input": "<input type=url template>",
2181
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2182
+
2183
+ {"description": "allowed 'autofocus' attribute on <input type='url'>",
2184
+ "input": "<input type=url autofocus>",
2185
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2186
+
2187
+ {"description": "'target' attribute not allowed on <input type='url'>",
2188
+ "input": "<input type=url target>",
2189
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2190
+
2191
+ {"description": "'method' attribute not allowed on <input type='url'>",
2192
+ "input": "<input type=url method>",
2193
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2194
+
2195
+ {"description": "allowed 'form' attribute on <input type='url'>",
2196
+ "input": "<input type=url form>",
2197
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2198
+
2199
+ {"description": "'max' attribute not allowed on <input type='url'>",
2200
+ "input": "<input type=url max>",
2201
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2202
+
2203
+ {"description": "'step' attribute not allowed on <input type='url'>",
2204
+ "input": "<input type=url step>",
2205
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2206
+
2207
+ {"description": "'enctype' attribute not allowed on <input type='url'>",
2208
+ "input": "<input type=url enctype>",
2209
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2210
+
2211
+ {"description": "'src' attribute not allowed on <input type='url'>",
2212
+ "input": "<input type=url src>",
2213
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2214
+
2215
+ {"description": "allowed 'name' attribute on <input type='url'>",
2216
+ "input": "<input type=url name>",
2217
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2218
+
2219
+ {"description": "allowed 'required' attribute on <input type='url'>",
2220
+ "input": "<input type=url required>",
2221
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2222
+
2223
+ {"description": "allowed 'list' attribute on <input type='url'>",
2224
+ "input": "<input type=url list>",
2225
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2226
+
2227
+ {"description": "allowed 'value' attribute on <input type='url'>",
2228
+ "input": "<input type=url value>",
2229
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2230
+
2231
+ {"description": "allowed 'autocomplete' attribute on <input type='url'>",
2232
+ "input": "<input type=url autocomplete>",
2233
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2234
+
2235
+ {"description": "allowed 'inputmode' attribute on <input type='url'>",
2236
+ "input": "<input type=url inputmode>",
2237
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2238
+
2239
+ {"description": "allowed 'maxlength' attribute on <input type='url'>",
2240
+ "input": "<input type=url maxlength>",
2241
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2242
+
2243
+ {"description": "'action' attribute not allowed on <input type='url'>",
2244
+ "input": "<input type=url action>",
2245
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2246
+
2247
+ {"description": "allowed 'tabindex' attribute on <input type='url'>",
2248
+ "input": "<input type=url tabindex>",
2249
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2250
+
2251
+ {"description": "allowed 'accesskey' attribute on <input type='button'>",
2252
+ "input": "<input type=button accesskey>",
2253
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2254
+
2255
+ {"description": "'accept' attribute not allowed on <input type='button'>",
2256
+ "input": "<input type=button accept>",
2257
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2258
+
2259
+ {"description": "'replace' attribute not allowed on <input type='button'>",
2260
+ "input": "<input type=button replace>",
2261
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2262
+
2263
+ {"description": "allowed 'disabled' attribute on <input type='button'>",
2264
+ "input": "<input type=button disabled>",
2265
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2266
+
2267
+ {"description": "'alt' attribute not allowed on <input type='button'>",
2268
+ "input": "<input type=button alt>",
2269
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2270
+
2271
+ {"description": "'size' attribute not allowed on <input type='button'>",
2272
+ "input": "<input type=button size>",
2273
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2274
+
2275
+ {"description": "'checked' attribute not allowed on <input type='button'>",
2276
+ "input": "<input type=button checked>",
2277
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2278
+
2279
+ {"description": "'min' attribute not allowed on <input type='button'>",
2280
+ "input": "<input type=button min>",
2281
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2282
+
2283
+ {"description": "'pattern' attribute not allowed on <input type='button'>",
2284
+ "input": "<input type=button pattern>",
2285
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2286
+
2287
+ {"description": "'readonly' attribute not allowed on <input type='button'>",
2288
+ "input": "<input type=button readonly>",
2289
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2290
+
2291
+ {"description": "'template' attribute not allowed on <input type='button'>",
2292
+ "input": "<input type=button template>",
2293
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2294
+
2295
+ {"description": "allowed 'autofocus' attribute on <input type='button'>",
2296
+ "input": "<input type=button autofocus>",
2297
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2298
+
2299
+ {"description": "'target' attribute not allowed on <input type='button'>",
2300
+ "input": "<input type=button target>",
2301
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2302
+
2303
+ {"description": "'method' attribute not allowed on <input type='button'>",
2304
+ "input": "<input type=button method>",
2305
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2306
+
2307
+ {"description": "allowed 'form' attribute on <input type='button'>",
2308
+ "input": "<input type=button form>",
2309
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2310
+
2311
+ {"description": "'max' attribute not allowed on <input type='button'>",
2312
+ "input": "<input type=button max>",
2313
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2314
+
2315
+ {"description": "'step' attribute not allowed on <input type='button'>",
2316
+ "input": "<input type=button step>",
2317
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2318
+
2319
+ {"description": "'enctype' attribute not allowed on <input type='button'>",
2320
+ "input": "<input type=button enctype>",
2321
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2322
+
2323
+ {"description": "'src' attribute not allowed on <input type='button'>",
2324
+ "input": "<input type=button src>",
2325
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2326
+
2327
+ {"description": "allowed 'name' attribute on <input type='button'>",
2328
+ "input": "<input type=button name>",
2329
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2330
+
2331
+ {"description": "'required' attribute not allowed on <input type='button'>",
2332
+ "input": "<input type=button required>",
2333
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2334
+
2335
+ {"description": "'list' attribute not allowed on <input type='button'>",
2336
+ "input": "<input type=button list>",
2337
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2338
+
2339
+ {"description": "allowed 'value' attribute on <input type='button'>",
2340
+ "input": "<input type=button value>",
2341
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2342
+
2343
+ {"description": "'autocomplete' attribute not allowed on <input type='button'>",
2344
+ "input": "<input type=button autocomplete>",
2345
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2346
+
2347
+ {"description": "'inputmode' attribute not allowed on <input type='button'>",
2348
+ "input": "<input type=button inputmode>",
2349
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2350
+
2351
+ {"description": "'maxlength' attribute not allowed on <input type='button'>",
2352
+ "input": "<input type=button maxlength>",
2353
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2354
+
2355
+ {"description": "'action' attribute not allowed on <input type='button'>",
2356
+ "input": "<input type=button action>",
2357
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2358
+
2359
+ {"description": "allowed 'tabindex' attribute on <input type='button'>",
2360
+ "input": "<input type=button tabindex>",
2361
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2362
+
2363
+ {"description": "allowed 'accesskey' attribute on <input type='remove'>",
2364
+ "input": "<input type=remove accesskey>",
2365
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2366
+
2367
+ {"description": "'accept' attribute not allowed on <input type='remove'>",
2368
+ "input": "<input type=remove accept>",
2369
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2370
+
2371
+ {"description": "'replace' attribute not allowed on <input type='remove'>",
2372
+ "input": "<input type=remove replace>",
2373
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2374
+
2375
+ {"description": "allowed 'disabled' attribute on <input type='remove'>",
2376
+ "input": "<input type=remove disabled>",
2377
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2378
+
2379
+ {"description": "'alt' attribute not allowed on <input type='remove'>",
2380
+ "input": "<input type=remove alt>",
2381
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2382
+
2383
+ {"description": "'size' attribute not allowed on <input type='remove'>",
2384
+ "input": "<input type=remove size>",
2385
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2386
+
2387
+ {"description": "'checked' attribute not allowed on <input type='remove'>",
2388
+ "input": "<input type=remove checked>",
2389
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2390
+
2391
+ {"description": "'min' attribute not allowed on <input type='remove'>",
2392
+ "input": "<input type=remove min>",
2393
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2394
+
2395
+ {"description": "'pattern' attribute not allowed on <input type='remove'>",
2396
+ "input": "<input type=remove pattern>",
2397
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2398
+
2399
+ {"description": "'readonly' attribute not allowed on <input type='remove'>",
2400
+ "input": "<input type=remove readonly>",
2401
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2402
+
2403
+ {"description": "'template' attribute not allowed on <input type='remove'>",
2404
+ "input": "<input type=remove template>",
2405
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2406
+
2407
+ {"description": "allowed 'autofocus' attribute on <input type='remove'>",
2408
+ "input": "<input type=remove autofocus>",
2409
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2410
+
2411
+ {"description": "'target' attribute not allowed on <input type='remove'>",
2412
+ "input": "<input type=remove target>",
2413
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2414
+
2415
+ {"description": "'method' attribute not allowed on <input type='remove'>",
2416
+ "input": "<input type=remove method>",
2417
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2418
+
2419
+ {"description": "allowed 'form' attribute on <input type='remove'>",
2420
+ "input": "<input type=remove form>",
2421
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2422
+
2423
+ {"description": "'max' attribute not allowed on <input type='remove'>",
2424
+ "input": "<input type=remove max>",
2425
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2426
+
2427
+ {"description": "'step' attribute not allowed on <input type='remove'>",
2428
+ "input": "<input type=remove step>",
2429
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2430
+
2431
+ {"description": "'enctype' attribute not allowed on <input type='remove'>",
2432
+ "input": "<input type=remove enctype>",
2433
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2434
+
2435
+ {"description": "'src' attribute not allowed on <input type='remove'>",
2436
+ "input": "<input type=remove src>",
2437
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2438
+
2439
+ {"description": "allowed 'name' attribute on <input type='remove'>",
2440
+ "input": "<input type=remove name>",
2441
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2442
+
2443
+ {"description": "'required' attribute not allowed on <input type='remove'>",
2444
+ "input": "<input type=remove required>",
2445
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2446
+
2447
+ {"description": "'list' attribute not allowed on <input type='remove'>",
2448
+ "input": "<input type=remove list>",
2449
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2450
+
2451
+ {"description": "allowed 'value' attribute on <input type='remove'>",
2452
+ "input": "<input type=remove value>",
2453
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2454
+
2455
+ {"description": "'autocomplete' attribute not allowed on <input type='remove'>",
2456
+ "input": "<input type=remove autocomplete>",
2457
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2458
+
2459
+ {"description": "'inputmode' attribute not allowed on <input type='remove'>",
2460
+ "input": "<input type=remove inputmode>",
2461
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2462
+
2463
+ {"description": "'maxlength' attribute not allowed on <input type='remove'>",
2464
+ "input": "<input type=remove maxlength>",
2465
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2466
+
2467
+ {"description": "'action' attribute not allowed on <input type='remove'>",
2468
+ "input": "<input type=remove action>",
2469
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2470
+
2471
+ {"description": "allowed 'tabindex' attribute on <input type='remove'>",
2472
+ "input": "<input type=remove tabindex>",
2473
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2474
+
2475
+ {"description": "allowed 'accesskey' attribute on <input type='range'>",
2476
+ "input": "<input type=range accesskey>",
2477
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2478
+
2479
+ {"description": "'accept' attribute not allowed on <input type='range'>",
2480
+ "input": "<input type=range accept>",
2481
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2482
+
2483
+ {"description": "'replace' attribute not allowed on <input type='range'>",
2484
+ "input": "<input type=range replace>",
2485
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2486
+
2487
+ {"description": "allowed 'disabled' attribute on <input type='range'>",
2488
+ "input": "<input type=range disabled>",
2489
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2490
+
2491
+ {"description": "'alt' attribute not allowed on <input type='range'>",
2492
+ "input": "<input type=range alt>",
2493
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2494
+
2495
+ {"description": "'size' attribute not allowed on <input type='range'>",
2496
+ "input": "<input type=range size>",
2497
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2498
+
2499
+ {"description": "'checked' attribute not allowed on <input type='range'>",
2500
+ "input": "<input type=range checked>",
2501
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2502
+
2503
+ {"description": "allowed 'min' attribute on <input type='range'>",
2504
+ "input": "<input type=range min>",
2505
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2506
+
2507
+ {"description": "'pattern' attribute not allowed on <input type='range'>",
2508
+ "input": "<input type=range pattern>",
2509
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2510
+
2511
+ {"description": "allowed 'readonly' attribute on <input type='range'>",
2512
+ "input": "<input type=range readonly>",
2513
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2514
+
2515
+ {"description": "'template' attribute not allowed on <input type='range'>",
2516
+ "input": "<input type=range template>",
2517
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2518
+
2519
+ {"description": "allowed 'autofocus' attribute on <input type='range'>",
2520
+ "input": "<input type=range autofocus>",
2521
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2522
+
2523
+ {"description": "'target' attribute not allowed on <input type='range'>",
2524
+ "input": "<input type=range target>",
2525
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2526
+
2527
+ {"description": "'method' attribute not allowed on <input type='range'>",
2528
+ "input": "<input type=range method>",
2529
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2530
+
2531
+ {"description": "allowed 'form' attribute on <input type='range'>",
2532
+ "input": "<input type=range form>",
2533
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2534
+
2535
+ {"description": "allowed 'max' attribute on <input type='range'>",
2536
+ "input": "<input type=range max>",
2537
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2538
+
2539
+ {"description": "allowed 'step' attribute on <input type='range'>",
2540
+ "input": "<input type=range step>",
2541
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2542
+
2543
+ {"description": "'enctype' attribute not allowed on <input type='range'>",
2544
+ "input": "<input type=range enctype>",
2545
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2546
+
2547
+ {"description": "'src' attribute not allowed on <input type='range'>",
2548
+ "input": "<input type=range src>",
2549
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2550
+
2551
+ {"description": "allowed 'name' attribute on <input type='range'>",
2552
+ "input": "<input type=range name>",
2553
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2554
+
2555
+ {"description": "allowed 'required' attribute on <input type='range'>",
2556
+ "input": "<input type=range required>",
2557
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2558
+
2559
+ {"description": "allowed 'list' attribute on <input type='range'>",
2560
+ "input": "<input type=range list>",
2561
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2562
+
2563
+ {"description": "allowed 'value' attribute on <input type='range'>",
2564
+ "input": "<input type=range value>",
2565
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2566
+
2567
+ {"description": "allowed 'autocomplete' attribute on <input type='range'>",
2568
+ "input": "<input type=range autocomplete>",
2569
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2570
+
2571
+ {"description": "'inputmode' attribute not allowed on <input type='range'>",
2572
+ "input": "<input type=range inputmode>",
2573
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2574
+
2575
+ {"description": "'maxlength' attribute not allowed on <input type='range'>",
2576
+ "input": "<input type=range maxlength>",
2577
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2578
+
2579
+ {"description": "'action' attribute not allowed on <input type='range'>",
2580
+ "input": "<input type=range action>",
2581
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2582
+
2583
+ {"description": "allowed 'tabindex' attribute on <input type='range'>",
2584
+ "input": "<input type=range tabindex>",
2585
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2586
+
2587
+ {"description": "allowed 'accesskey' attribute on <input type='time'>",
2588
+ "input": "<input type=time accesskey>",
2589
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2590
+
2591
+ {"description": "'accept' attribute not allowed on <input type='time'>",
2592
+ "input": "<input type=time accept>",
2593
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2594
+
2595
+ {"description": "'replace' attribute not allowed on <input type='time'>",
2596
+ "input": "<input type=time replace>",
2597
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2598
+
2599
+ {"description": "allowed 'disabled' attribute on <input type='time'>",
2600
+ "input": "<input type=time disabled>",
2601
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2602
+
2603
+ {"description": "'alt' attribute not allowed on <input type='time'>",
2604
+ "input": "<input type=time alt>",
2605
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2606
+
2607
+ {"description": "'size' attribute not allowed on <input type='time'>",
2608
+ "input": "<input type=time size>",
2609
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2610
+
2611
+ {"description": "'checked' attribute not allowed on <input type='time'>",
2612
+ "input": "<input type=time checked>",
2613
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2614
+
2615
+ {"description": "allowed 'min' attribute on <input type='time'>",
2616
+ "input": "<input type=time min>",
2617
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2618
+
2619
+ {"description": "'pattern' attribute not allowed on <input type='time'>",
2620
+ "input": "<input type=time pattern>",
2621
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2622
+
2623
+ {"description": "allowed 'readonly' attribute on <input type='time'>",
2624
+ "input": "<input type=time readonly>",
2625
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2626
+
2627
+ {"description": "'template' attribute not allowed on <input type='time'>",
2628
+ "input": "<input type=time template>",
2629
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2630
+
2631
+ {"description": "allowed 'autofocus' attribute on <input type='time'>",
2632
+ "input": "<input type=time autofocus>",
2633
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2634
+
2635
+ {"description": "'target' attribute not allowed on <input type='time'>",
2636
+ "input": "<input type=time target>",
2637
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2638
+
2639
+ {"description": "'method' attribute not allowed on <input type='time'>",
2640
+ "input": "<input type=time method>",
2641
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2642
+
2643
+ {"description": "allowed 'form' attribute on <input type='time'>",
2644
+ "input": "<input type=time form>",
2645
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2646
+
2647
+ {"description": "allowed 'max' attribute on <input type='time'>",
2648
+ "input": "<input type=time max>",
2649
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2650
+
2651
+ {"description": "allowed 'step' attribute on <input type='time'>",
2652
+ "input": "<input type=time step>",
2653
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2654
+
2655
+ {"description": "'enctype' attribute not allowed on <input type='time'>",
2656
+ "input": "<input type=time enctype>",
2657
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2658
+
2659
+ {"description": "'src' attribute not allowed on <input type='time'>",
2660
+ "input": "<input type=time src>",
2661
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2662
+
2663
+ {"description": "allowed 'name' attribute on <input type='time'>",
2664
+ "input": "<input type=time name>",
2665
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2666
+
2667
+ {"description": "allowed 'required' attribute on <input type='time'>",
2668
+ "input": "<input type=time required>",
2669
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2670
+
2671
+ {"description": "allowed 'list' attribute on <input type='time'>",
2672
+ "input": "<input type=time list>",
2673
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2674
+
2675
+ {"description": "allowed 'value' attribute on <input type='time'>",
2676
+ "input": "<input type=time value>",
2677
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2678
+
2679
+ {"description": "allowed 'autocomplete' attribute on <input type='time'>",
2680
+ "input": "<input type=time autocomplete>",
2681
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2682
+
2683
+ {"description": "'inputmode' attribute not allowed on <input type='time'>",
2684
+ "input": "<input type=time inputmode>",
2685
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2686
+
2687
+ {"description": "'maxlength' attribute not allowed on <input type='time'>",
2688
+ "input": "<input type=time maxlength>",
2689
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2690
+
2691
+ {"description": "'action' attribute not allowed on <input type='time'>",
2692
+ "input": "<input type=time action>",
2693
+ "fail-unless": "attribute-not-allowed-on-this-input-type"},
2694
+
2695
+ {"description": "allowed 'tabindex' attribute on <input type='time'>",
2696
+ "input": "<input type=time tabindex>",
2697
+ "fail-if": "attribute-not-allowed-on-this-input-type"},
2698
+
2699
+ {"description": "unknown 'foo' attribute on <input type='checkbox'>",
2700
+ "input": "<input type=checkbox foo>",
2701
+ "fail-unless": "unknown-attribute"},
2702
+
2703
+ {"description": "unknown 'foo' attribute on <input type='text'>",
2704
+ "input": "<input type=text foo>",
2705
+ "fail-unless": "unknown-attribute"},
2706
+
2707
+ {"description": "unknown 'foo' attribute on <input type='image'>",
2708
+ "input": "<input type=image foo>",
2709
+ "fail-unless": "unknown-attribute"},
2710
+
2711
+ {"description": "unknown 'foo' attribute on <input type='number'>",
2712
+ "input": "<input type=number foo>",
2713
+ "fail-unless": "unknown-attribute"},
2714
+
2715
+ {"description": "unknown 'foo' attribute on <input type='month'>",
2716
+ "input": "<input type=month foo>",
2717
+ "fail-unless": "unknown-attribute"},
2718
+
2719
+ {"description": "unknown 'foo' attribute on <input type='radio'>",
2720
+ "input": "<input type=radio foo>",
2721
+ "fail-unless": "unknown-attribute"},
2722
+
2723
+ {"description": "unknown 'foo' attribute on <input type='file'>",
2724
+ "input": "<input type=file foo>",
2725
+ "fail-unless": "unknown-attribute"},
2726
+
2727
+ {"description": "unknown 'foo' attribute on <input type='password'>",
2728
+ "input": "<input type=password foo>",
2729
+ "fail-unless": "unknown-attribute"},
2730
+
2731
+ {"description": "unknown 'foo' attribute on <input type='move-up'>",
2732
+ "input": "<input type=move-up foo>",
2733
+ "fail-unless": "unknown-attribute"},
2734
+
2735
+ {"description": "unknown 'foo' attribute on <input type='submit'>",
2736
+ "input": "<input type=submit foo>",
2737
+ "fail-unless": "unknown-attribute"},
2738
+
2739
+ {"description": "unknown 'foo' attribute on <input type='add'>",
2740
+ "input": "<input type=add foo>",
2741
+ "fail-unless": "unknown-attribute"},
2742
+
2743
+ {"description": "unknown 'foo' attribute on <input type='hidden'>",
2744
+ "input": "<input type=hidden foo>",
2745
+ "fail-unless": "unknown-attribute"},
2746
+
2747
+ {"description": "unknown 'foo' attribute on <input type='email'>",
2748
+ "input": "<input type=email foo>",
2749
+ "fail-unless": "unknown-attribute"},
2750
+
2751
+ {"description": "unknown 'foo' attribute on <input type='week'>",
2752
+ "input": "<input type=week foo>",
2753
+ "fail-unless": "unknown-attribute"},
2754
+
2755
+ {"description": "unknown 'foo' attribute on <input type='date'>",
2756
+ "input": "<input type=date foo>",
2757
+ "fail-unless": "unknown-attribute"},
2758
+
2759
+ {"description": "unknown 'foo' attribute on <input type='datetime'>",
2760
+ "input": "<input type=datetime foo>",
2761
+ "fail-unless": "unknown-attribute"},
2762
+
2763
+ {"description": "unknown 'foo' attribute on <input type='move-down'>",
2764
+ "input": "<input type=move-down foo>",
2765
+ "fail-unless": "unknown-attribute"},
2766
+
2767
+ {"description": "unknown 'foo' attribute on <input type='datetime-local'>",
2768
+ "input": "<input type=datetime-local foo>",
2769
+ "fail-unless": "unknown-attribute"},
2770
+
2771
+ {"description": "unknown 'foo' attribute on <input type='reset'>",
2772
+ "input": "<input type=reset foo>",
2773
+ "fail-unless": "unknown-attribute"},
2774
+
2775
+ {"description": "unknown 'foo' attribute on <input type='url'>",
2776
+ "input": "<input type=url foo>",
2777
+ "fail-unless": "unknown-attribute"},
2778
+
2779
+ {"description": "unknown 'foo' attribute on <input type='button'>",
2780
+ "input": "<input type=button foo>",
2781
+ "fail-unless": "unknown-attribute"},
2782
+
2783
+ {"description": "unknown 'foo' attribute on <input type='remove'>",
2784
+ "input": "<input type=remove foo>",
2785
+ "fail-unless": "unknown-attribute"},
2786
+
2787
+ {"description": "unknown 'foo' attribute on <input type='range'>",
2788
+ "input": "<input type=range foo>",
2789
+ "fail-unless": "unknown-attribute"},
2790
+
2791
+ {"description": "unknown 'foo' attribute on <input type='time'>",
2792
+ "input": "<input type=time foo>",
2793
+ "fail-unless": "unknown-attribute"}
2794
+
2795
+ ]}