module AssertValid::Assertions

Public Instance Methods

assert_invalid(invalid_record, attribute_name = nil, error_kind = nil) click to toggle source
# File lib/assert_valid/assertions.rb, line 3
 def assert_invalid(invalid_record, attribute_name = nil, error_kind = nil)
   assert_not(
     invalid_record.valid?,
     "No validation errors raised. Record: #{invalid_record.inspect}"
   )
   if attribute_name
     assert_includes(
       invalid_record.errors.attribute_names,
       attribute_name,
       "Expected record to have a(n) #{attribute_name} error.
Errors: #{invalid_record.errors.details}
Record: #{invalid_record.inspect}"
     )
     if error_kind
       assert(
         invalid_record.errors.details[attribute_name].any? do |err_detail|
           err_detail[:error] == error_kind
         end,
         "Expected #{attribute_name} errors to include a #{error_kind} error.
        #{attribute_name} errors were: #{invalid_record.errors.details}"
       )
     end
   end
 end
assert_valid(record) click to toggle source
# File lib/assert_valid/assertions.rb, line 28
 def assert_valid(record)
   assert(
     record.save,
     "Record could not be saved. Record: #{record.inspect}
Errors: #{record.errors.details}"
   )
 end