Fix last test
This commit is contained in:
@ -35,6 +35,9 @@ It is now forbidden to report a violation:
|
||||
- With a `null` message
|
||||
- With a `null` set of format arguments (prefer a zero-length array)
|
||||
|
||||
Note that the message is set from the XML rule declaration, so this is only relevant
|
||||
if you instantiate rules manually.
|
||||
|
||||
{% jdoc core::RuleContext %} now requires setting the current rule before calling
|
||||
{% jdoc core::lang.rule.Rule#apply(java.util.List, core::RuleContext)}. This is
|
||||
done automatically by `RuleSet#apply` and such. Creating and configuring a
|
||||
|
@ -21,6 +21,12 @@ import net.sourceforge.pmd.testframework.RuleTst;
|
||||
public class SuppressWarningsTest extends RuleTst {
|
||||
|
||||
private static class BarRule extends AbstractApexRule {
|
||||
|
||||
@Override
|
||||
public String getMessage() {
|
||||
return "a message";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object visit(ASTUserClass clazz, Object ctx) {
|
||||
if (clazz.getImage().equalsIgnoreCase("bar")) {
|
||||
|
@ -45,14 +45,21 @@ public class AbstractApexRuleTest extends ApexParserTestBase {
|
||||
|
||||
private void run(String code) {
|
||||
ApexNode<Compilation> node = parse(code);
|
||||
TopLevelRule rule = new TopLevelRule();
|
||||
RuleContext ctx = new RuleContext();
|
||||
ctx.setLanguageVersion(apex.getDefaultVersion());
|
||||
TopLevelRule rule = new TopLevelRule();
|
||||
ctx.setCurrentRule(rule);
|
||||
rule.apply(Collections.singletonList(node), ctx);
|
||||
assertEquals(1, ctx.getReport().size());
|
||||
}
|
||||
|
||||
private static class TopLevelRule extends AbstractApexRule {
|
||||
|
||||
@Override
|
||||
public String getMessage() {
|
||||
return "a message";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object visit(ASTUserClass node, Object data) {
|
||||
addViolation(data, node);
|
||||
|
Reference in New Issue
Block a user