rspec/rules/S3923/abap/rule.adoc

35 lines
765 B
Plaintext
Raw Normal View History

Having all branches in a `+CASE+` or `+IF+` chain with the same implementation is an error. Either a copy-paste error was made and something different should be executed, or there shouldn't be a `+CASE+`/`+IF+` chain at all.
2020-06-30 12:48:39 +02:00
== Noncompliant Code Example
----
IF a >0.
doSomething.
ELSE IF b> 0.
doSomething.
ELSE.
doSomething.
ENDIF.
CASE i.
WHEN 1 OR 3.
doSomething.
WHEN 2.
doSomething.
WHEN OTHERS.
doSomething.
ENDCASE.
----
== Exceptions
Note that this rule does not apply to `+IF+` chains without final `+ELSE+`-s, or to `+CASE+`-s without `+WHEN OTHERS+` clauses.
2020-06-30 12:48:39 +02:00
----
IF a >0. "no issue, this could have been done on purpose to make the code more readable
doSomething.
ELSEIF b> 0.
doSomething.
ENDIF.
----