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.
== Noncompliant Code Example
----
if b == 0 # Noncompliant
doOneMoreThing()
else
end
b = a > 12 ? 4 : 4; # Noncompliant
case i # Noncompliant
when 1
doSomething()
when 2
when 3
== Exceptions
This rule does not apply to ``++if++`` chains or ``++case++``-es without ``++else++``-s.
if b == 0 # no issue, this could have been done on purpose to make the code more readable
elsif b == 1