docs/modules/ROOT/pages/cops_minitest.adoc in rubocop-minitest-0.17.2 vs docs/modules/ROOT/pages/cops_minitest.adoc in rubocop-minitest-0.18.0
- old
+ new
@@ -260,21 +260,23 @@
| 0.1
| -
|===
This cop enforces the test to use `assert_nil` instead of using
-`assert_equal(nil, something)` or `assert(something.nil?)`.
+`assert_equal(nil, something)`, `assert(something.nil?)`, or `assert_predicate(something, :nil?)`.
=== Examples
[source,ruby]
----
# bad
assert_equal(nil, actual)
assert_equal(nil, actual, 'message')
assert(object.nil?)
assert(object.nil?, 'message')
+assert_predicate(object, :nil?)
+assert_predicate(object, :nil?, 'message')
# good
assert_nil(actual)
assert_nil(actual, 'message')
----
@@ -345,10 +347,42 @@
=== References
* https://minitest.rubystyle.guide/#assert-path-exists
+== Minitest/AssertPredicate
+
+|===
+| Enabled by default | Safe | Supports autocorrection | Version Added | Version Changed
+
+| Pending
+| Yes
+| Yes
+| 0.18
+| -
+|===
+
+This cop enforces the test to use `assert_predicate`
+instead of using `assert(obj.a_predicate_method?)`.
+
+=== Examples
+
+[source,ruby]
+----
+# bad
+assert(obj.one?)
+assert(obj.one?, 'message')
+
+# good
+assert_predicate(obj, :one?)
+assert_predicate(obj, :one?, 'message')
+----
+
+=== References
+
+* https://minitest.rubystyle.guide/#assert-predicate
+
== Minitest/AssertRespondTo
|===
| Enabled by default | Safe | Supports autocorrection | Version Added | Version Changed
@@ -1023,21 +1057,23 @@
| 0.2
| -
|===
This cop enforces the test to use `refute_nil` instead of using
-`refute_equal(nil, something)` or `refute(something.nil?)`.
+`refute_equal(nil, something)`, `refute(something.nil?)`, or `refute_predicate(something, :nil?)`.
=== Examples
[source,ruby]
----
# bad
refute_equal(nil, actual)
refute_equal(nil, actual, 'message')
refute(actual.nil?)
refute(actual.nil?, 'message')
+refute_predicate(object, :nil?)
+refute_predicate(object, :nil?, 'message')
# good
refute_nil(actual)
refute_nil(actual, 'message')
----
@@ -1075,9 +1111,41 @@
----
=== References
* https://minitest.rubystyle.guide/#refute-path-exists
+
+== Minitest/RefutePredicate
+
+|===
+| Enabled by default | Safe | Supports autocorrection | Version Added | Version Changed
+
+| Pending
+| Yes
+| Yes
+| 0.18
+| -
+|===
+
+This cop enforces the test to use `refute_predicate`
+instead of using `refute(obj.a_predicate_method?)`.
+
+=== Examples
+
+[source,ruby]
+----
+# bad
+refute(obj.one?)
+refute(obj.one?, 'message')
+
+# good
+refute_predicate(obj, :one?)
+refute_predicate(obj, :one?, 'message')
+----
+
+=== References
+
+* https://minitest.rubystyle.guide/#refute-predicate
== Minitest/RefuteRespondTo
|===
| Enabled by default | Safe | Supports autocorrection | Version Added | Version Changed