module ActiveModel::Validations

Public Instance Methods

error_on(attribute, options = {})
Alias for: errors_on
errors_on(attribute, options = {}) click to toggle source

Extension to enhance `should have` on AR Model instances. Calls model.valid? in order to prepare the object's errors object. Accepts a :context option to specify the validation context.

You can also use this to specify the content of the error messages.

@example

model.should have(:no).errors_on(:attribute)
model.should have(1).error_on(:attribute)
model.should have(n).errors_on(:attribute)
model.should have(n).errors_on(:attribute, :context => :create)

model.errors_on(:attribute).should include("can't be blank")
# File lib/rspec/rails/extensions/active_record/base.rb, line 42
def errors_on(attribute, options = {})
  self.valid?(options[:context])
  [self.errors[attribute]].flatten.compact
end
Also aliased as: error_on