Skip to content

Commit bcf7cee

Browse files
committed
Add test to ensure recommended setup works
1 parent 70f4138 commit bcf7cee

File tree

4 files changed

+28
-3
lines changed

4 files changed

+28
-3
lines changed

.erb-lint.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
---
2+
inherit_gem:
3+
erblint-github:
4+
- config/accessibility.yml

.erb-linters/linters.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
require "erblint-github/linters"

test/linter_test_case.rb

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,7 @@ def setup
55
@linter = linter_class&.new(file_loader, linter_class.config_schema.new)
66
end
77

8-
def linter_class
9-
raise NotImplementedError
10-
end
8+
def linter_class; end
119

1210
def offenses
1311
@linter.offenses

test/recommended_setup_works_test.rb

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# frozen_string_literal: true
2+
3+
require "test_helper"
4+
5+
class RecommendedSetupWorksTest < LinterTestCase
6+
# The ability to share rules and configs from other gems in erb_lint is not well-documented.
7+
# This test validates that our recommended setup works.
8+
def test_asserts_recommended_setup_works
9+
erb_lint_config = ERBLint::RunnerConfig.new(file_loader.yaml(".erb-lint.yml"), file_loader)
10+
11+
rules_enabled_in_accessibility_config = 0
12+
erb_lint_config.to_hash["linters"].each do |linter|
13+
if linter[0].include?("GitHub::Accessibility") && linter[1]["enabled"] == true
14+
rules_enabled_in_accessibility_config += 1
15+
end
16+
end
17+
known_linter_names ||= ERBLint::LinterRegistry.linters.map(&:simple_name)
18+
19+
assert_equal 15, rules_enabled_in_accessibility_config
20+
assert_equal 15, known_linter_names.count { |linter| linter.include?("GitHub::Accessibility") }
21+
end
22+
end

0 commit comments

Comments
 (0)