Testování jednoduché formy validátoru
class Spolecnost < ActiveRecord::Base
validates_uniqueness_of :ico
endPříklad 47.14. test/unit/:model_test.rb
class SpolecnostTest < ActiveSupport::TestCase
fixtures :spolecnosti
def_test_uniquness_of_ico
cl = spolecnosti(:cl)
spolecnost = create_valid(:ico => cl.ico) # new record with same ico as cl
assert spolecnost.errors.invalid?(:ico)
end
endFIXME: vyřešit assert !.
V příkladu jsou využity metody které jsem popsal v 47.18.2.2 – „Pomocné testovací metody“.
Pokud jsou přípustné prázdné či nil hodnoty, připíšeme další testy.
def test_uniqueness_of_ico_nil
assert create_valid1(:ico => nil).save
valid = create_valid2(:ico => nil)
assert ! valid.errors.invalid?(:ico)
end
def test_uniqueness_of_ico_blank
assert create_valid1(:ico => ' ').save
valid = create_valid2(:ico => ' ')
assert ! valid.errors.invalid?(:ico)
end