diff options
author | Jeremy Kemper <jeremy@bitsweat.net> | 2009-12-28 11:13:35 -0800 |
---|---|---|
committer | Jeremy Kemper <jeremy@bitsweat.net> | 2009-12-28 11:13:35 -0800 |
commit | 632df063a33fab68b50ed893630af7f38821878d (patch) | |
tree | ef76a8193129d9e51a86226224021ba63fb6d1b7 /activemodel/test/cases/validations/with_validation_test.rb | |
parent | 91e28aae8649c503e81d66ad6829403ccc2c6571 (diff) | |
parent | 74098e4cb6de01745db8f1d8d567645553ade7c5 (diff) | |
download | rails-632df063a33fab68b50ed893630af7f38821878d.tar.gz rails-632df063a33fab68b50ed893630af7f38821878d.tar.bz2 rails-632df063a33fab68b50ed893630af7f38821878d.zip |
Merge commit 'josevalim/validations'
Diffstat (limited to 'activemodel/test/cases/validations/with_validation_test.rb')
-rw-r--r-- | activemodel/test/cases/validations/with_validation_test.rb | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/activemodel/test/cases/validations/with_validation_test.rb b/activemodel/test/cases/validations/with_validation_test.rb index fae87a6188..9e9b925df2 100644 --- a/activemodel/test/cases/validations/with_validation_test.rb +++ b/activemodel/test/cases/validations/with_validation_test.rb @@ -6,32 +6,33 @@ require 'models/topic' class ValidatesWithTest < ActiveRecord::TestCase include ActiveModel::TestsDatabase - include ActiveModel::ValidationsRepairHelper - repair_validations(Topic) + def teardown + Topic.reset_callbacks(:validate) + end ERROR_MESSAGE = "Validation error from validator" OTHER_ERROR_MESSAGE = "Validation error from other validator" class ValidatorThatAddsErrors < ActiveModel::Validator - def validate() + def validate(record) record.errors[:base] << ERROR_MESSAGE end end class OtherValidatorThatAddsErrors < ActiveModel::Validator - def validate() + def validate(record) record.errors[:base] << OTHER_ERROR_MESSAGE end end class ValidatorThatDoesNotAddErrors < ActiveModel::Validator - def validate() + def validate(record) end end class ValidatorThatValidatesOptions < ActiveModel::Validator - def validate() + def validate(record) if options[:field] == :first_name record.errors[:base] << ERROR_MESSAGE end @@ -98,11 +99,11 @@ class ValidatesWithTest < ActiveRecord::TestCase assert topic.errors[:base].include?(ERROR_MESSAGE) end - test "passes all non-standard configuration options to the validator class" do + test "passes all configuration options to the validator class" do topic = Topic.new validator = mock() - validator.expects(:new).with(topic, {:foo => :bar}).returns(validator) - validator.expects(:validate) + validator.expects(:new).with(:foo => :bar, :if => "1 == 1").returns(validator) + validator.expects(:validate).with(topic) Topic.validates_with(validator, :if => "1 == 1", :foo => :bar) assert topic.valid? |