diff --git a/src/it/test-projects/creedengo-java-plugin-test-project/src/main/java/org/greencodeinitiative/creedengo/java/checks/GCI82/MakeNonReassignedVariablesConstants.java b/src/it/test-projects/creedengo-java-plugin-test-project/src/main/java/org/greencodeinitiative/creedengo/java/checks/GCI82/MakeNonReassignedVariablesConstants.java index dc192cdd..e7801691 100644 --- a/src/it/test-projects/creedengo-java-plugin-test-project/src/main/java/org/greencodeinitiative/creedengo/java/checks/GCI82/MakeNonReassignedVariablesConstants.java +++ b/src/it/test-projects/creedengo-java-plugin-test-project/src/main/java/org/greencodeinitiative/creedengo/java/checks/GCI82/MakeNonReassignedVariablesConstants.java @@ -16,7 +16,7 @@ public class MakeNonReassignedVariablesConstants { private String varDefinedInClassReassigned = "0"; // Compliant private String varDefinedInConstructorReassigned = "1"; // Compliant - // using "this" + // using "this" private String varDefinedInClassNotReassignedByThis = "0"; // Noncompliant {{The variable is never reassigned and can be 'final'}} private String varDefinedInClassReassignedByThis = "0"; // Compliant private String varDefinedInConstructorReassignedByThis = "1"; // Compliant @@ -45,7 +45,7 @@ public void parameterNotReassigned(final String notReassigned) { logger.info(notReassigned); } - public void parameterNotReassignedNotFinal(String notReassigned) { // Noncompliant {{The variable is never reassigned and can be 'final'}} + public void parameterNotReassignedNotFinal(String notReassigned) { // Compliant logger.info(notReassigned); } @@ -143,7 +143,15 @@ class notReassignedInConstructor{ } } class notReassignedInConstructorNotFinal{ - notReassignedInConstructorNotFinal(String notReassignedInConstructorNotFinal) { // Noncompliant {{The variable is never reassigned and can be 'final'}} + notReassignedInConstructorNotFinal(String notReassignedInConstructorNotFinal) { // Compliant System.out.println(notReassignedInConstructorNotFinal); } +} + +interface interfaceMethodWithNullBlockAndBlock { + boolean notNullBlock(T testInterfaceBlock) { // Compliant + logger.info(interfaceWithNullBlock); + } + + boolean nullBlock(T testInterfaceNullBlock); // Compliant } \ No newline at end of file diff --git a/src/main/java/org/greencodeinitiative/creedengo/java/checks/MakeNonReassignedVariablesConstants.java b/src/main/java/org/greencodeinitiative/creedengo/java/checks/MakeNonReassignedVariablesConstants.java index 495bc4e2..07226a0d 100644 --- a/src/main/java/org/greencodeinitiative/creedengo/java/checks/MakeNonReassignedVariablesConstants.java +++ b/src/main/java/org/greencodeinitiative/creedengo/java/checks/MakeNonReassignedVariablesConstants.java @@ -32,6 +32,12 @@ public void visitNode(@Nonnull Tree tree) { LOGGER.debug(" => isNotReassigned = {}", isNotReassigned(variableTree)); LOGGER.debug(" => isPassedAsNonFinalParameter = {}", isPassedAsNonFinalParameter(variableTree)); } + + if(variableTree.symbol().isParameter()){ + super.visitNode(tree); + return; + } + if (isNotFinalAndNotStatic(variableTree) && isNotReassigned(variableTree)) { reportIssue(tree, MESSAGE_RULE); } else {