@Test public void should_set_valid_status() { Rule rule = Rule.create().setStatus(Rule.STATUS_DEPRECATED); assertThat(rule.getStatus()).isEqualTo(Rule.STATUS_DEPRECATED); rule = Rule.create().setStatus(Rule.STATUS_REMOVED); assertThat(rule.getStatus()).isEqualTo(Rule.STATUS_REMOVED); rule = Rule.create().setStatus(Rule.STATUS_BETA); assertThat(rule.getStatus()).isEqualTo(Rule.STATUS_BETA); rule = Rule.create().setStatus(Rule.STATUS_READY); assertThat(rule.getStatus()).isEqualTo(Rule.STATUS_READY); }
@Test public void rule_with_property() { List<Rule> rules = parseAnnotatedClass(RuleWithProperty.class); assertThat(rules).hasSize(1); Rule rule = rules.get(0); assertThat(rule.getKey()).isEqualTo("foo"); assertThat(rule.getName()).isEqualTo("bar"); assertThat(rule.getDescription()).isEqualTo("Foo Bar"); assertThat(rule.getSeverity()).isEqualTo(RulePriority.BLOCKER); assertThat(rule.getStatus()).isEqualTo(Rule.STATUS_READY); assertThat(rule.getParams()).hasSize(1); RuleParam prop = rule.getParam("property"); assertThat(prop.getKey()).isEqualTo("property"); assertThat(prop.getDescription()).isEqualTo("Ignore ?"); assertThat(prop.getDefaultValue()).isEqualTo("false"); assertThat(prop.getType()).isEqualTo(PropertyType.STRING.name()); }
private void updateUnmatchedIssue(DefaultIssue issue, boolean forceEndOfLife) { issue.setNew(false); boolean manualIssue = !Strings.isNullOrEmpty(issue.reporter()); Rule rule = ruleFinder.findByKey(issue.ruleKey()); if (manualIssue) { // Manual rules are not declared in Quality profiles, so no need to check ActiveRule boolean isRemovedRule = rule == null || Rule.STATUS_REMOVED.equals(rule.getStatus()); issue.setEndOfLife(forceEndOfLife || isRemovedRule); issue.setOnDisabledRule(isRemovedRule); } else { ActiveRule activeRule = rulesProfile.getActiveRule(issue.ruleKey().repository(), issue.ruleKey().rule()); issue.setEndOfLife(true); issue.setOnDisabledRule(activeRule == null || rule == null || Rule.STATUS_REMOVED.equals(rule.getStatus())); } }