Ruby on Rails 7 ships with Minitest. Here's a definitive guide to what assertions are available in Minitest 5.1.
Assertion | Asserts |
---|---|
assert( test, [msg] ) |
Asserts that test is true. |
assert_not( test, [msg] ) |
Asserts that test is false. |
assert_equal( expected, actual, [msg] ) |
Asserts that expected == actual is true. |
assert_not_equal( expected, actual, [msg] ) |
Asserts that expected != actual is true. |
assert_same( expected, actual, [msg] ) |
Asserts that expected.equal?(actual) is true. |
assert_not_same( expected, actual, [msg] ) |
Asserts that expected.equal?(actual) is false. |
assert_nil( obj, [msg] ) |
Asserts that obj.nil? is true. |
assert_not_nil( obj, [msg] ) |
Asserts that obj.nil? is false. |
assert_empty( obj, [msg] ) |
Asserts that obj is empty? . |
assert_not_empty( obj, [msg] ) |
Asserts that obj is not empty? . |
assert_match( regexp, string, [msg] ) |
Asserts that a string matches the regular expression. |
assert_no_match( regexp, string, [msg] ) |
Asserts that a string doesn't match the regular expression. |
assert_includes( collection, obj, [msg] ) |
Asserts that obj is in collection . |
assert_not_includes( collection, obj, [msg] ) |
Asserts that obj is not in collection . |
assert_in_delta( expected, actual, [delta], [msg] ) |
Asserts that the numbers expected and actual are within delta of each other. |
assert_not_in_delta( expected, actual, [delta], [msg] ) |
Asserts that the numbers expected and actual are not within delta of each other. |
assert_in_epsilon ( expected, actual, [epsilon], [msg] ) |
Asserts that the numbers expected and actual have a relative error less than epsilon . |
assert_not_in_epsilon ( expected, actual, [epsilon], [msg] ) |
Asserts that the numbers expected and actual have a relative error not less than epsilon . |
assert_throws( symbol, [msg] ) { block } |
Asserts that the given block throws the symbol. |
assert_raises( exception1, exception2, ... ) { block } |
Asserts that the given block raises one of the given exceptions. |
assert_instance_of( class, obj, [msg] ) |
Asserts that obj is an instance of class . |
assert_not_instance_of( class, obj, [msg] ) |
Asserts that obj is not an instance of class . |
assert_kind_of( class, obj, [msg] ) |
Asserts that obj is an instance of class or is descending from it. |
assert_not_kind_of( class, obj, [msg] ) |
Asserts that obj is not an instance of class and is not descending from it. |
assert_respond_to( obj, symbol, [msg] ) |
Asserts that obj responds to symbol . |
assert_not_respond_to( obj, symbol, [msg] ) |
Asserts that obj does not respond to symbol . |
assert_operator( obj1, operator, [obj2], [msg] ) |
Asserts that obj1.operator(obj2) is true. |
assert_not_operator( obj1, operator, [obj2], [msg] ) |
Asserts that obj1.operator(obj2) is false. |
assert_predicate ( obj, predicate, [msg] ) |
Asserts that obj.predicate is true, e.g. assert_predicate str, :empty?
|
assert_not_predicate ( obj, predicate, [msg] ) |
Asserts that obj.predicate is false, e.g. assert_not_predicate str, :empty?
|
assert_error_reported(class) { block } |
Asserts that the error class has been reported, e.g. assert_error_reported IOError { Rails.error.report(IOError.new("Oops")) }
|
assert_no_error_reported { block } |
Asserts that no errors have been reported, e.g. assert_no_error_reported { perform_service }
|
flunk( [msg] ) |
Asserts failure. This is useful to explicitly mark a test that isn't finished yet. |
We're writing Ruby on Rails at Salvation Co. Technologists keen on Saving The World are invited to join the innovations. Salvation Company
Top comments (0)