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.
if b == 0: # Noncompliant
doOneMoreThing()
elif b == 1:
doOneMoreThing()
else:
doOneMoreThing()
b = 4 if a > 12 else 4 # Noncompliant
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()