44
55class AvoidBothDisabledAndAriaDisabled < LinterTestCase
66 def linter_class
7- ERBLint ::Linters ::GitHub ::Accessibility ::AvoidBothDisabledAndAriaDisabledCounter
7+ ERBLint ::Linters ::GitHub ::Accessibility ::AvoidBothDisabledAndAriaDisabled
88 end
99
1010 ELEMENTS_WITH_NATIVE_DISABLED_ATTRIBUTE_SUPPORT = %w[ button fieldset input optgroup option select textarea ] . freeze
@@ -15,7 +15,7 @@ def test_warns_if_both_disabled_and_aria_disabled_set_on_html_elements_with_disa
1515 end . join
1616 @linter . run ( processed_source )
1717
18- assert_equal @linter . offenses . count , 8
18+ assert_equal @linter . offenses . count , 7
1919 end
2020
2121 def test_does_not_warn_if_only_disabled_attribute_is_set
@@ -36,35 +36,24 @@ def test_does_not_warn_if_only_aria_disabled_attribute_is_set
3636 assert_empty @linter . offenses
3737 end
3838
39- def test_does_not_raise_when_ignore_comment_with_correct_count
40- @file = <<~ERB
41- <%# erblint:counter GitHub::Accessibility::AvoidBothDisabledAndAriaDisabledCounter 1 %>
42- < button disabled aria-disabled ="true "> Some text</ span >
43- ERB
44-
39+ def test_adds_extra_offense_to_add_counter_comment_if_counter_config_enabled
40+ @file = ELEMENTS_WITH_NATIVE_DISABLED_ATTRIBUTE_SUPPORT . map do |element |
41+ "<#{ element } aria-disabled='true' disabled> </#{ element } >"
42+ end . join
43+ @linter . config . counter_enabled = true
4544 @linter . run ( processed_source )
46- assert_empty @linter . offenses
47- end
4845
49- def test_does_not_autocorrect_when_ignores_are_correct
50- @file = <<~ERB
51- <%# erblint:counter GitHub::Accessibility::AvoidBothDisabledAndAriaDisabledCounter 1 %>
52- < button disabled aria-disabled ="true "> Some text</ button >
53- ERB
54-
55- assert_equal @file , corrected_content
46+ assert_equal @linter . offenses . count , 8
47+ assert_match ( /If you must, add <%# erblint:counter GitHub::Accessibility::AvoidBothDisabledAndAriaDisabled 7 %> to bypass this check/ , @linter . offenses . last . message )
5648 end
5749
58- def test_does_autocorrect_when_ignores_are_not_correct
50+ def test_does_not_raise_when_ignore_comment_with_correct_count_if_counter_enabled
5951 @file = <<~ERB
60- < button disabled aria-disabled ="true "> Some text</ button >
61- ERB
62- refute_equal @file , corrected_content
63-
64- expected_content = <<~ERB
6552 <%# erblint:counter GitHub::Accessibility::AvoidBothDisabledAndAriaDisabledCounter 1 %>
66- < button disabled aria-disabled ="true "> Some text</ button >
53+ < button disabled aria-disabled ="true "> Some text</ span >
6754 ERB
68- assert_equal expected_content , corrected_content
55+ @linter . config . counter_enabled = true
56+ @linter . run ( processed_source )
57+ assert_empty @linter . offenses
6958 end
7059end
0 commit comments