From acacf1906e8b9fc67e6ebf1850dd21cb8a010154 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sun, 27 Mar 2016 17:24:42 +0200 Subject: [PATCH] Fix unit tests of AvoidSoqlInLoopsRule --- .../pmd/lang/apex/rule/basic/AvoidSoqlInLoopsRule.java | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/rule/basic/AvoidSoqlInLoopsRule.java b/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/rule/basic/AvoidSoqlInLoopsRule.java index df74a1c5f0..d78596e785 100644 --- a/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/rule/basic/AvoidSoqlInLoopsRule.java +++ b/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/rule/basic/AvoidSoqlInLoopsRule.java @@ -17,7 +17,7 @@ public class AvoidSoqlInLoopsRule extends AbstractOptimizationRule { @Override public Object visit(ASTSoqlExpression node, Object data) { - if (insideLoop(node) && fourthParentNotThrow(node) && fourthParentNotReturn(node)) { + if (insideLoop(node) && fourthParentNotThrow(node) && parentNotReturn(node)) { addViolation(data, node); } return data; @@ -27,8 +27,8 @@ public class AvoidSoqlInLoopsRule extends AbstractOptimizationRule { return !(node.jjtGetParent().jjtGetParent().jjtGetParent().jjtGetParent() instanceof ASTThrowStatement); } - private boolean fourthParentNotReturn(ASTSoqlExpression node) { - return !(node.jjtGetParent().jjtGetParent().jjtGetParent().jjtGetParent() instanceof ASTReturnStatement); + private boolean parentNotReturn(ASTSoqlExpression node) { + return !(node.jjtGetParent() instanceof ASTReturnStatement); } private boolean insideLoop(ASTSoqlExpression node) { @@ -39,10 +39,6 @@ public class AvoidSoqlInLoopsRule extends AbstractOptimizationRule { || n instanceof ASTForLoopStatement || n instanceof ASTForEachStatement) { return true; } - else if (n.jjtGetParent() instanceof ASTForLoopStatement || n.jjtGetParent() instanceof ASTForEachStatement) { - n = n.jjtGetParent(); - } - n = n.jjtGetParent(); } return false;