Having the same implementation in every branch of an if
chain is an error. Either a copy-paste error was made and something different
should be executed, or there shouldn’t be an if
chain at all.
Noncompliant Code Example
if b == 0: # Noncompliant
doOneMoreThing()
elif b == 1:
doOneMoreThing()
else:
doOneMoreThing()
b = 4 if a > 12 else 4 # Noncompliant
Exceptions
This rule does not apply to if
chains without else
-s.
if b == 0: # no issue, this could have been done on purpose to make the code more readable
doOneMoreThing()
elif b == 1:
doOneMoreThing()