Module: Modelizer::Validations

Defined in:
lib/modelizer/validations.rb

Instance Method Summary collapse

Instance Method Details

#test_presence_for(plan, attribute) ⇒ Object



3
4
5
6
7
8
# File 'lib/modelizer/validations.rb', line 3

def test_presence_for plan, attribute
  define_method "test_#{attribute}_presence" do
    bad = build plan, attribute => nil
    assert_invalid attribute, bad
  end
end

#test_uniqueness_for(plan, attribute) ⇒ Object



10
11
12
13
14
15
16
# File 'lib/modelizer/validations.rb', line 10

def test_uniqueness_for plan, attribute
  define_method "test_#{attribute}_uniqueness" do
    good = create plan
    bad  = build(plan) { |o| o.send("#{attribute}=", good.send(attribute)) }
    assert_invalid attribute, bad
  end
end

#test_validations_for(plan, attribute, *validations) ⇒ Object



18
19
20
21
22
# File 'lib/modelizer/validations.rb', line 18

def test_validations_for plan, attribute, *validations
  validations.each do |validation|
    send "test_#{validation}_for", plan, attribute
  end
end