Redundant boolean literals should be removed from expressions to improve readability.
Code examples
Noncompliant code example
if condition == true  { /* ... */ } // Noncompliant
if condition != false { /* ... */ } // Noncompliant
if condition && true  { /* ... */ } // Noncompliant
if condition || false { /* ... */ } // Noncompliant
doSomething(!false)                 // Noncompliant
doSomething(condition == true)      // Noncompliant
v = condition ? true  : false   // Noncompliant
v = condition ? true  : exp     // Noncompliant
v = condition ? false : exp     // Noncompliant
v = condition ? exp   : true    // Noncompliant
v = condition ? exp   : false   // Noncompliant
Compliant solution
if condition { /* ... */ }
if condition { /* ... */ }
if condition { /* ... */ }
if condition { /* ... */ }
doSomething(true)
doSomething(condition)
v = condition
v = condition  || exp
v = !condition && exp
v = !condition || exp
v = condition  && exp
Exceptions
Expression statements are ignored.
expect(value) == true // ignored