rspec/rules/S3981/kotlin/rule.adoc

46 lines
968 B
Plaintext
Raw Normal View History

== Why is this an issue?
The size of a collection or an array is always greater than or equal to zero. So testing that a size is greater than or equal to zero doesn't make sense, since the result is always `true`. Similarly testing that it is less than zero will always return `false`. Perhaps the intent was to check the non-emptiness of the collection or array instead.
=== Noncompliant code example
[source,kotlin]
----
if (myList.size >= 0) { ... }
if (myList.size < 0) { ... }
boolean result = myArray.size >= 0;
if (0 > myArray.size) { ... }
----
=== Compliant solution
[source,kotlin]
----
if (!myList.isEmpty()) { ... }
if (myArray.size >= 42) { ... }
----
ifdef::env-github,rspecator-view[]
'''
== Implementation Specification
(visible only on this page)
include::../message.adoc[]
include::../highlighting.adoc[]
'''
== Comments And Links
(visible only on this page)
include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]