While solving sonarQube issue i face the below warning,does any one tell me how to overcome this warning
Method:-
@Override
public boolean equals
Sonar Qube Rule:squid:S1126 - Return boolean expressions instead of boolean literal
In SonarQube, analyzers contribute rules which are executed on source code to generate issues. There are four types of rules:
Noncompliant Code Example | Compliant Solution
--------------------------- | ----------------------------
boolean foo(Object param) { | boolean foo(Object param) {
/*Some Condition*/ | boolean expression = false;
if(param == null) { | if(param != null) { // param == null - squid:S4165
return true; | //expression = true; //(squid:S4165)
} | //} else {
| if(/**/) { // Compliant
if(/**/){/* Noncompliant*/ | expression = true;
return true; | } else if(/**/) {
} else if(/**/) { | expression = true;
return true; | } else if(/**/) { // squid:S1871
} else if(/**/) { | expression = true;
return true; | } else { // To avoid else.
} | expression = false;
return false; | }
} | }
| return expression;
| }
squid:S1871 - Two branches in a conditional structure should not have exactly the same implementation: When multiple else if() { } same code inside the block to overcome this problem above we use extra else {} block with different implementation.
SonarSourcerules, making Code Analyzers - Quality software comes from quality code
See also: