about summary refs log tree commit diff
path: root/spec/support/matchers/model/model_have_error_on_field.rb
blob: 85bdd82159d3212dad7b4f749b384e5b06827e1e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
RSpec::Matchers.define :model_have_error_on_field do |expected|
  match do |record|
    if record.errors.empty?
      record.valid?
    end

    record.errors.has_key?(expected)
  end

  failure_message do |record|
    keys = record.errors.attribute_names

    "expect record.errors(#{keys}) to include #{expected}"
  end
end