Skip to content

Commit 1310fa4

Browse files
committed
Add counter tests
1 parent 8c484cc commit 1310fa4

File tree

6 files changed

+151
-6
lines changed

6 files changed

+151
-6
lines changed

README.md

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,17 +55,12 @@ linters:
5555
5656
- [GitHub::Accessibility::AvoidBothDisabledAndAriaDisabledCounter](./docs/rules/accessibility/avoid-both-disabled-and-aria-disabled-counter.md)
5757
- [GitHub::Accessibility::AvoidGenericLinkTextCounter](./docs/rules/accessibility/avoid-generic-link-text-counter.md)
58-
<<<<<<< HEAD
5958
- [GitHub::Accessibility::DisabledAttributeCounter](./docs/rules/accessibility/disabled-attribute-counter.md)
60-
- [GitHub::Accessibility::IframeHasTitle](./docs/rules/accessibility/iframe-has-title.md)
6159
- [GitHub::Accessibility::LandmarkHasLabelCounter](./docs/rules/accessibility/landmark-has-label-counter.md)
62-
- [GitHub::Accessibility::ImageHasAlt](./docs/rules/accessibility/image-has-alt.md)
6360
- [GitHub::Accessibility::LinkHasHrefCounter](./docs/rules/accessibility/link-has-href-counter.md)
6461
- [GitHub::Accessibility::NestedInteractiveElementsCounter](./docs/rules/accessibility/nested-interactive-elements-counter.md)
65-
=======
6662
- [GitHub::Accessibility::IframeHasTitleCounter](./docs/rules/accessibility/iframe-has-title-counter.md)
6763
- [GitHub::Accessibility::ImageHasAltCounter](./docs/rules/accessibility/image-has-alt-counter.md)
68-
>>>>>>> 3ac20b8 (Migrate remaining rules to counters)
6964
- [GitHub::Accessibility::NoAriaLabelMisuseCounter](./docs/rules/accessibility/no-aria-label-misuse-counter.md)
7065
- [GitHub::Accessibility::NoPositiveTabIndexCounter](./docs/rules/accessibility/no-positive-tab-index-counter.md)
7166
- [GitHub::Accessibility::NoRedundantImageAltCounter](./docs/rules/accessibility/no-redundant-image-alt-counter.md)

test/linters/accessibility/avoid_both_disabled_and_aria_disabled_counter_test.rb

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,36 @@ def test_does_not_warn_if_only_aria_disabled_attribute_is_set
3535

3636
assert_empty @linter.offenses
3737
end
38+
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+
45+
@linter.run(processed_source)
46+
assert_empty @linter.offenses
47+
end
48+
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
56+
end
57+
58+
def test_does_autocorrect_when_ignores_are_not_correct
59+
@file = <<~ERB
60+
<button disabled aria-disabled="true">Some text</button>
61+
ERB
62+
refute_equal @file, corrected_content
63+
64+
expected_content = <<~ERB
65+
<%# erblint:counter GitHub::Accessibility::AvoidBothDisabledAndAriaDisabledCounter 1 %>
66+
<button disabled aria-disabled="true">Some text</button>
67+
ERB
68+
assert_equal expected_content, corrected_content
69+
end
3870
end

test/linters/accessibility/iframe_has_title_counter_test.rb

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,36 @@ def test_does_not_warn_if_iframe_has_title_set_to_string
2727

2828
assert_empty @linter.offenses
2929
end
30+
31+
def test_does_not_raise_when_ignore_comment_with_correct_count
32+
@file = <<~ERB
33+
<%# erblint:counter GitHub::Accessibility::IframeHasTitleCounter 1 %>
34+
<iframe></iframe>
35+
ERB
36+
37+
@linter.run(processed_source)
38+
assert_empty @linter.offenses
39+
end
40+
41+
def test_does_not_autocorrect_when_ignores_are_correct
42+
@file = <<~ERB
43+
<%# erblint:counter GitHub::Accessibility::IframeHasTitleCounter 1 %>
44+
<iframe></iframe>
45+
ERB
46+
47+
assert_equal @file, corrected_content
48+
end
49+
50+
def test_does_autocorrect_when_ignores_are_not_correct
51+
@file = <<~ERB
52+
<iframe></iframe>
53+
ERB
54+
refute_equal @file, corrected_content
55+
56+
expected_content = <<~ERB
57+
<%# erblint:counter GitHub::Accessibility::IframeHasTitleCounter 1 %>
58+
<iframe></iframe>
59+
ERB
60+
assert_equal expected_content, corrected_content
61+
end
3062
end

test/linters/accessibility/image_has_alt_counter_test.rb

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,36 @@ def test_does_not_warn_if_image_has_alt_attribute_set_to_string
2727

2828
assert_empty @linter.offenses
2929
end
30+
31+
def test_does_not_raise_when_ignore_comment_with_correct_count
32+
@file = <<~ERB
33+
<%# erblint:counter GitHub::Accessibility::ImageHasAltCounter 1 %>
34+
<img></img>
35+
ERB
36+
37+
@linter.run(processed_source)
38+
assert_empty @linter.offenses
39+
end
40+
41+
def test_does_not_autocorrect_when_ignores_are_correct
42+
@file = <<~ERB
43+
<%# erblint:counter GitHub::Accessibility::ImageHasAltCounter 1 %>
44+
<img></img>
45+
ERB
46+
47+
assert_equal @file, corrected_content
48+
end
49+
50+
def test_does_autocorrect_when_ignores_are_not_correct
51+
@file = <<~ERB
52+
<img></img>
53+
ERB
54+
refute_equal @file, corrected_content
55+
56+
expected_content = <<~ERB
57+
<%# erblint:counter GitHub::Accessibility::ImageHasAltCounter 1 %>
58+
<img></img>
59+
ERB
60+
assert_equal expected_content, corrected_content
61+
end
3062
end

test/linters/accessibility/no_positive_tab_index_counter_test.rb

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,36 @@ def test_does_not_warn_if_zero_tabindex_is_used
2727

2828
assert_empty @linter.offenses
2929
end
30+
31+
def test_does_not_raise_when_ignore_comment_with_correct_count
32+
@file = <<~ERB
33+
<%# erblint:counter GitHub::Accessibility::NoPositiveTabIndexCounter 1 %>
34+
<button tabindex='1'></button>
35+
ERB
36+
37+
@linter.run(processed_source)
38+
assert_empty @linter.offenses
39+
end
40+
41+
def test_does_not_autocorrect_when_ignores_are_correct
42+
@file = <<~ERB
43+
<%# erblint:counter GitHub::Accessibility::NoPositiveTabIndexCounter 1 %>
44+
<button tabindex='1'></button>
45+
ERB
46+
47+
assert_equal @file, corrected_content
48+
end
49+
50+
def test_does_autocorrect_when_ignores_are_not_correct
51+
@file = <<~ERB
52+
<button tabindex='1'></button>
53+
ERB
54+
refute_equal @file, corrected_content
55+
56+
expected_content = <<~ERB
57+
<%# erblint:counter GitHub::Accessibility::NoPositiveTabIndexCounter 1 %>
58+
<button tabindex='1'></button>
59+
ERB
60+
assert_equal expected_content, corrected_content
61+
end
3062
end

test/linters/accessibility/no_redundant_image_alt_counter_test.rb

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def test_does_not_warn_if_alt_contains_no_redundant_text
2828
assert_empty @linter.offenses
2929
end
3030

31-
def test_does_not_warn_if_linter_is_disabled_in_file
31+
def test_does_not_raise_when_ignore_comment_with_correct_count
3232
@file = <<~ERB
3333
<%# erblint:counter GitHub::Accessibility::NoRedundantImageAltCounter 1 %>
3434
<img alt='image of an octopus'></img>
@@ -37,4 +37,26 @@ def test_does_not_warn_if_linter_is_disabled_in_file
3737
@linter.run(processed_source)
3838
assert_empty @linter.offenses
3939
end
40+
41+
def test_does_not_autocorrect_when_ignores_are_correct
42+
@file = <<~ERB
43+
<%# erblint:counter GitHub::Accessibility::NoRedundantImageAltCounter 1 %>
44+
<img alt='image of an octopus'></img>
45+
ERB
46+
47+
assert_equal @file, corrected_content
48+
end
49+
50+
def test_does_autocorrect_when_ignores_are_not_correct
51+
@file = <<~ERB
52+
<img alt='image of an octopus'></img>
53+
ERB
54+
refute_equal @file, corrected_content
55+
56+
expected_content = <<~ERB
57+
<%# erblint:counter GitHub::Accessibility::NoRedundantImageAltCounter 1 %>
58+
<img alt='image of an octopus'></img>
59+
ERB
60+
assert_equal expected_content, corrected_content
61+
end
4062
end

0 commit comments

Comments
 (0)