public void initializePatternsForPath(String relativePath, String componentKey) { for (IssuePattern pattern : getMulticriteriaPatterns()) { if (shouldAddPatternIfMatch(pattern.matchResource(relativePath))) { getPatternMatcher().addPatternForComponent(componentKey, pattern); } } }
@Test public void shouldPrintPatternToString() { IssuePattern pattern = new IssuePattern("*", "checkstyle:*"); assertThat(pattern.toString()) .isEqualTo( "IssuePattern[resourcePattern=*,rulePattern=checkstyle:*,lines=[],lineRanges=[],beginBlockRegexp=<null>,endBlockRegexp=<null>,allFileRegexp=<null>,checkLines=true]"); }
@Test public void shouldMatchViolation() { Rule rule = Rule.create("checkstyle", "IllegalRegexp", ""); String javaFile = "org.foo.Bar"; IssuePattern pattern = new IssuePattern("*", "*"); pattern.addLine(12); assertThat(pattern.match(create(rule, javaFile, null))).isFalse(); assertThat(pattern.match(create(rule, javaFile, 12))).isTrue(); assertThat(pattern.match(create(rule, null, null))).isFalse(); }
@Test public void shouldMatchLines() { IssuePattern pattern = new IssuePattern("*", "*"); pattern.addLine(12).addLine(15).addLineRange(20, 25); assertThat(pattern.matchLine(3)).isFalse(); assertThat(pattern.matchLine(12)).isTrue(); assertThat(pattern.matchLine(14)).isFalse(); assertThat(pattern.matchLine(21)).isTrue(); assertThat(pattern.matchLine(6599)).isFalse(); }