validates_timeliness/spec/support/model_helpers.rb

28 lines
707 B
Ruby

module ModelHelpers
# Some test helpers from Rails source
def invalid!(attr_name, values, error = nil)
with_each_person_value(attr_name, values) do |record, value|
record.should be_invalid
record.errors[attr_name].size.should >= 1
record.errors[attr_name].first.should == error if error
end
end
def valid!(attr_name, values)
with_each_person_value(attr_name, values) do |record, value|
record.should be_valid
end
end
def with_each_person_value(attr_name, values)
record = Person.new
values = [values] unless values.is_a?(Array)
values.each do |value|
record.send("#{attr_name}=", value)
yield record, value
end
end
end