Skip to content

Commit c2b65b7

Browse files
committed
Reverted autocomplete valid
1 parent 7674591 commit c2b65b7

File tree

7 files changed

+277
-281
lines changed

7 files changed

+277
-281
lines changed

lib/checks/forms/autocomplete-a11y-evaluate.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { isValidAutocomplete } from '../../commons/text';
2-
import { ErrorHandler } from '../../../../a11y-engine-core/lib/core/errors/error-handler';
32

43
function checkIsElementValidAutocomplete(node, options, virtualNode) {
54
const autocomplete = virtualNode
@@ -69,7 +68,7 @@ function autocompleteA11yEvaluate(node, options, virtualNode) {
6968
return checkIsElementValidAutocomplete(node, options, virtualNode);
7069
}
7170
} catch (err) {
72-
ErrorHandler.addCheckError('autocomplete-attribute-valid-check', err);
71+
// ErrorHandler.addCheckError('autocomplete-attribute-valid-check', err);
7372
return undefined;
7473
}
7574
}

lib/checks/forms/autocomplete-valid.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"id": "autocomplete-valid",
3-
"evaluate": "autocomplete-a11y-evaluate",
3+
"evaluate": "autocomplete-valid-evaluate",
44
"metadata": {
55
"impact": "moderate",
66
"messages": {

lib/rules/autocomplete-valid.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"id": "autocomplete-valid",
3-
"matches": "autocomplete-a11y-matches",
3+
"matches": "autocomplete-matches",
44
"tags": [
55
"cat.forms",
66
"wcag21aa",

test/checks/forms/autocomplete-valid.js

Lines changed: 163 additions & 163 deletions
Large diffs are not rendered by default.

test/integration/rules/autocomplete-valid/autocomplete-valid.html

Lines changed: 101 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,11 @@
77

88
<textarea autocomplete="Street-Address" id="pass3"></textarea>
99

10-
<input autocomplete="section-partner email" id="pass4" />
10+
<input autocomplete="Work EMail" id="pass4" />
1111

12-
<input autocomplete="section-primary shipping work email" id="pass5" />
12+
<input autocomplete="section-partner email" id="pass5" />
13+
14+
<input autocomplete="section-primary shipping work email" id="pass6" />
1315

1416
<!-- Unknown autocomplete term -->
1517
<input autocomplete="badterm" id="fail1" />
@@ -27,135 +29,135 @@
2729
<button autocomplete="username" id="inapplicable1"></button>
2830

2931
<!-- Empty attribute -->
30-
<input autocomplete="" id="fail5" />
32+
<input autocomplete="" id="inapplicable2" />
3133

3234
<!-- Hidden through display:none -->
33-
<input autocomplete="username" style="display:none" id="inapplicable2" />
35+
<input autocomplete="username" style="display:none" id="inapplicable3" />
3436

3537
<!-- Off screen and not focusable -->
3638
<input
3739
autocomplete="username"
3840
tabindex="-1"
3941
aria-hidden="true"
4042
style="position:absolute; top:-9999em"
41-
id="inapplicable3"
43+
id="inapplicable4"
4244
/>
4345

4446
<!-- input button -->
45-
<input type="button" autocomplete="username" id="inapplicable4" />
47+
<input type="button" autocomplete="username" id="inapplicable5" />
4648

4749
<!-- hidden -->
48-
<input type="hidden" autocomplete="username" id="inapplicable5" />
50+
<input type="hidden" autocomplete="username" id="inapplicable6" />
4951

5052
<!-- native disabled -->
51-
<input autocomplete="username" disabled id="inapplicable6" />
53+
<input autocomplete="username" disabled id="inapplicable7" />
5254

5355
<!-- ARIA disabled -->
54-
<input autocomplete="username" aria-disabled="true" id="inapplicable7" />
56+
<input autocomplete="username" aria-disabled="true" id="inapplicable8" />
5557

5658
<!-- non-widget element -->
5759
<input
5860
type="button"
5961
role="none"
6062
tabindex="-1"
6163
autocomplete="username"
62-
id="inapplicable8"
64+
id="inapplicable9"
6365
/>
64-
<input autocomplete=" " id="fail6" />
65-
66-
<input autocomplete="on" id="fail7" />
67-
<input autocomplete=" on " id="fail8" />
68-
<input autocomplete=" OFF " id="pass6" />
69-
<input autocomplete=" name " id="pass7" />
70-
<input autocomplete="honorific-prefix" id="pass8" />
71-
<input autocomplete="GIVEN-NAME" id="pass9" />
72-
<input autocomplete="additional-name" id="pass10" />
73-
<input autocomplete="section-foo billing family-name" id="pass11" />
74-
<input autocomplete="honorific-suffix" id="pass12" />
75-
<input autocomplete="nickname" id="pass13" />
76-
<input autocomplete="USERNAME" id="pass14" />
77-
<input autocomplete="section-foo new-password" id="pass15" />
78-
<input autocomplete="shipping current-password" id="pass16" />
79-
<input autocomplete="organization-title" id="pass17" />
80-
<input autocomplete="organization" id="pass18" />
81-
<textarea autocomplete="section-foo street-address" id="pass19"></textarea>
82-
<input autocomplete="address-line1" id="pass20" />
83-
<input autocomplete="billing address-line2" id="pass21" />
84-
<input autocomplete="address-line3" id="pass22" />
85-
<input autocomplete="section-foo address-level4" id="pass23" />
86-
<input autocomplete="address-level3" id="pass24" />
87-
<input autocomplete="address-level2" id="pass25" />
88-
<input autocomplete="SHIPPING address-level1" id="pass26" />
89-
<input autocomplete="section-foo country" id="pass27" />
90-
<input autocomplete="country-name" id="pass28" />
91-
<input autocomplete="postal-code" id="pass29" />
92-
<input autocomplete="CC-name" id="pass30" />
93-
<input autocomplete="section-foo billing cc-given-name" id="pass31" />
94-
<input autocomplete="cc-additional-name" id="pass32" />
95-
<input autocomplete="cc-family-name" id="pass33" />
96-
<input autocomplete="cc-number" id="pass34" />
97-
<input autocomplete="section-foo cc-exp" id="pass35" />
98-
<input autocomplete="shipping CC-Exp-Month" id="pass36" />
99-
<input autocomplete="cc-exp-year" id="pass37" />
100-
<input autocomplete="cc-csc" id="pass38" />
101-
<input autocomplete="section-foo cc-type" id="pass39" />
102-
<input autocomplete="transaction-currency" id="pass40" />
103-
<input autocomplete="billing transaction-amount" id="pass41" />
104-
<input autocomplete="language" id="pass42" />
105-
<input autocomplete="section-foo bday" id="pass43" />
106-
<input autocomplete="bday-day" id="pass44" />
107-
<input autocomplete="bday-month" id="pass45" />
108-
<input autocomplete="section-foo shipping bday-year" id="pass46" />
109-
<input autocomplete="sex" id="pass47" />
110-
<input autocomplete="url" id="pass48" />
111-
<input autocomplete="photo" id="pass49" />
112-
<input autocomplete="section-foo photo" id="pass50" />
113-
<input autocomplete="HOME TEL" id="pass51" />
114-
<input autocomplete="section-foo shipping work tel-country-code" id="pass52" />
115-
<input autocomplete="mobile tel-national" id="pass53" />
116-
<input autocomplete="fax tel-area-code" id="pass54" />
117-
<input autocomplete="pager tel-local" id="pass55" />
118-
<input autocomplete="home tel-local-prefix" id="pass56" />
119-
<input autocomplete="work tel-local-suffix" id="pass57" />
120-
<input autocomplete="SECTION-foo mobile tel-extension" id="pass58" />
121-
<input autocomplete="fax email" id="pass59" />
122-
<input type="username" autocomplete="email" id="pass60" />
123-
<input autocomplete="pager impp" id="pass61" />
66+
<input autocomplete=" " id="inapplicable10" />
67+
68+
<input autocomplete="on" id="pass7" />
69+
<input autocomplete=" on " id="pass8" />
70+
<input autocomplete=" OFF " id="pass9" />
71+
<input autocomplete=" name " id="pass10" />
72+
<input autocomplete="honorific-prefix" id="pass11" />
73+
<input autocomplete="GIVEN-NAME" id="pass12" />
74+
<input autocomplete="additional-name" id="pass13" />
75+
<input autocomplete="section-foo billing family-name" id="pass14" />
76+
<input autocomplete="honorific-suffix" id="pass15" />
77+
<input autocomplete="nickname" id="pass16" />
78+
<input autocomplete="USERNAME" id="pass17" />
79+
<input autocomplete="section-foo new-password" id="pass18" />
80+
<input autocomplete="shipping current-password" id="pass19" />
81+
<input autocomplete="organization-title" id="pass20" />
82+
<input autocomplete="organization" id="pass21" />
83+
<textarea autocomplete="section-foo street-address" id="pass22"></textarea>
84+
<input autocomplete="address-line1" id="pass23" />
85+
<input autocomplete="billing address-line2" id="pass24" />
86+
<input autocomplete="address-line3" id="pass25" />
87+
<input autocomplete="section-foo address-level4" id="pass26" />
88+
<input autocomplete="address-level3" id="pass27" />
89+
<input autocomplete="address-level2" id="pass28" />
90+
<input autocomplete="SHIPPING address-level1" id="pass29" />
91+
<input autocomplete="section-foo country" id="pass30" />
92+
<input autocomplete="country-name" id="pass31" />
93+
<input autocomplete="postal-code" id="pass32" />
94+
<input autocomplete="CC-name" id="pass33" />
95+
<input autocomplete="section-foo billing cc-given-name" id="pass34" />
96+
<input autocomplete="cc-additional-name" id="pass35" />
97+
<input autocomplete="cc-family-name" id="pass36" />
98+
<input autocomplete="cc-number" id="pass37" />
99+
<input autocomplete="section-foo cc-exp" id="pass38" />
100+
<input autocomplete="shipping CC-Exp-Month" id="pass39" />
101+
<input autocomplete="cc-exp-year" id="pass40" />
102+
<input autocomplete="cc-csc" id="pass41" />
103+
<input autocomplete="section-foo cc-type" id="pass42" />
104+
<input autocomplete="transaction-currency" id="pass43" />
105+
<input autocomplete="billing transaction-amount" id="pass44" />
106+
<input autocomplete="language" id="pass45" />
107+
<input autocomplete="section-foo bday" id="pass46" />
108+
<input autocomplete="bday-day" id="pass47" />
109+
<input autocomplete="bday-month" id="pass48" />
110+
<input autocomplete="section-foo shipping bday-year" id="pass49" />
111+
<input autocomplete="sex" id="pass50" />
112+
<input autocomplete="url" id="pass51" />
113+
<input autocomplete="photo" id="pass52" />
114+
<input autocomplete="section-foo photo" id="pass53" />
115+
<input autocomplete="HOME TEL" id="pass54" />
116+
<input autocomplete="section-foo shipping work tel-country-code" id="pass55" />
117+
<input autocomplete="mobile tel-national" id="pass56" />
118+
<input autocomplete="fax tel-area-code" id="pass57" />
119+
<input autocomplete="pager tel-local" id="pass58" />
120+
<input autocomplete="home tel-local-prefix" id="pass59" />
121+
<input autocomplete="work tel-local-suffix" id="pass60" />
122+
<input autocomplete="SECTION-foo mobile tel-extension" id="pass61" />
123+
<input autocomplete="fax email" id="pass62" />
124+
<input type="username" autocomplete="email" id="pass83" />
125+
<input autocomplete="pager impp" id="pass63" />
124126
<input
125127
autocomplete="off"
126-
id="pass62"
128+
id="pass64"
127129
name="input_1"
128130
placeholder="Numeric Input Field"
129131
value="42"
130132
type="tel"
131133
/>
132-
<input autocomplete="on" id="fail9" value="" type="url" />
133-
<input autocomplete="off" id="pass63" value="42" type="datetime-local" />
134-
<input autocomplete="street-address" id="pass64" type="text" />
135-
<input autocomplete="on" id="fail10" value="" type="url " />
136-
<input autocomplete="off" id="pass78" value="42" type=" DateTime-Local" />
137-
138-
<input autocomplete="tel-country-code" id="pass65" type="tel" />
139-
<input autocomplete="tel-national" id="pass66" type="tel" />
140-
<input autocomplete="tel-area-code" id="pass67" type="tel" />
141-
<input autocomplete="tel-local" id="pass68" type="tel" />
142-
<input autocomplete="tel-local-prefix" id="pass69" type="tel" />
143-
<input autocomplete="tel-local-suffix" id="pass70" type="tel" />
144-
<input autocomplete="tel-extension" id="pass71" type="tel" />
145-
146-
<input autocomplete="one-time-code" id="pass72" />
147-
148-
<input autocomplete="cc-number" type="tel" id="pass73" />
149-
<input autocomplete="cc-exp" type="tel" id="pass74" />
150-
<input autocomplete="cc-exp-month" type="tel" id="pass75" />
151-
<input autocomplete="cc-exp-year" type="tel" id="pass76" />
152-
<input autocomplete="cc-csc" type="tel" id="pass77" />
134+
<input autocomplete="on" id="pass65" value="" type="url" />
135+
<input autocomplete="off" id="pass66" value="42" type="datetime-local" />
136+
<input autocomplete="street-address" id="pass67" type="text" />
137+
<input autocomplete="on" id="pass68" value="" type="url " />
138+
<input autocomplete="off" id="pass69" value="42" type=" DateTime-Local" />
139+
140+
<input autocomplete="tel-country-code" id="pass70" type="tel" />
141+
<input autocomplete="tel-national" id="pass71" type="tel" />
142+
<input autocomplete="tel-area-code" id="pass72" type="tel" />
143+
<input autocomplete="tel-local" id="pass73" type="tel" />
144+
<input autocomplete="tel-local-prefix" id="pass74" type="tel" />
145+
<input autocomplete="tel-local-suffix" id="pass75" type="tel" />
146+
<input autocomplete="tel-extension" id="pass76" type="tel" />
147+
148+
<input autocomplete="one-time-code" id="pass77" />
149+
150+
<input autocomplete="cc-number" type="tel" id="pass78" />
151+
<input autocomplete="cc-exp" type="tel" id="pass79" />
152+
<input autocomplete="cc-exp-month" type="tel" id="pass80" />
153+
<input autocomplete="cc-exp-year" type="tel" id="pass81" />
154+
<input autocomplete="cc-csc" type="tel" id="pass82" />
153155

154156
<!-- Attribute values that contains synonyms of on/off -->
155-
<input autocomplete="none" id="pass78" />
156-
<input autocomplete="false" id="pass79" />
157-
<input autocomplete="true" id="pass80" />
158-
<input autocomplete="disabled" id="pass81" />
159-
<input autocomplete="enabled" id="pass82" />
160-
<input autocomplete="undefined" id="pass83" />
161-
<input autocomplete="null" id="pass84" />
157+
<input autocomplete="none" id="pass84" />
158+
<input autocomplete="false" id="pass85" />
159+
<input autocomplete="true" id="pass86" />
160+
<input autocomplete="disabled" id="pass87" />
161+
<input autocomplete="enabled" id="pass88" />
162+
<input autocomplete="undefined" id="pass89" />
163+
<input autocomplete="null" id="pass90" />

test/integration/rules/autocomplete-valid/autocomplete-valid.json

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,7 @@
11
{
22
"description": "autocomplete-valid tests",
33
"rule": "autocomplete-valid",
4-
"violations": [
5-
["#fail1"],
6-
["#fail2"],
7-
["#fail3"],
8-
["#fail4"],
9-
["#fail5"],
10-
["#fail6"],
11-
["#fail7"],
12-
["#fail8"],
13-
["#fail9"],
14-
["#fail10"]
15-
],
4+
"violations": [["#fail1"], ["#fail2"], ["#fail3"], ["#fail4"]],
165
"passes": [
176
["#pass1"],
187
["#pass2"],
@@ -97,6 +86,12 @@
9786
["#pass81"],
9887
["#pass82"],
9988
["#pass83"],
100-
["#pass84"]
89+
["#pass84"],
90+
["#pass85"],
91+
["#pass86"],
92+
["#pass87"],
93+
["#pass88"],
94+
["#pass89"],
95+
["#pass90"]
10196
]
10297
}

test/rule-matches/autocomplete-matches.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ describe('autocomplete-matches', function() {
4646
});
4747
});
4848

49-
it('returns true for elements with an empty autocomplete', function() {
49+
it('returns false for elements with an empty autocomplete', function() {
5050
var vNode = queryFixture('<input id="target" autocomplete=" ">');
51-
assert.isTrue(rule.matches(null, vNode));
51+
assert.isFalse(rule.matches(null, vNode));
5252
});
5353

5454
it('returns false for intput[type=hidden]', function() {

0 commit comments

Comments
 (0)