aboutsummaryrefslogtreecommitdiffstats
path: root/activemodel/test
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2011-08-25 07:10:16 -0700
committerJosé Valim <jose.valim@gmail.com>2011-08-25 07:10:16 -0700
commitd15069316f331c46165248c2df869145fef60008 (patch)
treeb3565673bfd275620a41b50b1fbe86b4d798c4e3 /activemodel/test
parent68424fb1cf45acda3ad1daef30136f3bcd4f9f9d (diff)
parentcbb147931b2f547ad76a7ed233430642490c6000 (diff)
downloadrails-d15069316f331c46165248c2df869145fef60008.tar.gz
rails-d15069316f331c46165248c2df869145fef60008.tar.bz2
rails-d15069316f331c46165248c2df869145fef60008.zip
Merge pull request #2563 from bogdan/internal_validation
Implemented strict validation concept
Diffstat (limited to 'activemodel/test')
-rw-r--r--activemodel/test/cases/validations_test.rb33
1 files changed, 33 insertions, 0 deletions
diff --git a/activemodel/test/cases/validations_test.rb b/activemodel/test/cases/validations_test.rb
index 0b50acf913..2f4376bd41 100644
--- a/activemodel/test/cases/validations_test.rb
+++ b/activemodel/test/cases/validations_test.rb
@@ -297,4 +297,37 @@ class ValidationsTest < ActiveModel::TestCase
assert auto.valid?
end
+
+ def test_strict_validation_in_validates
+ Topic.validates :title, :strict => true, :presence => true
+ assert_raises ActiveModel::StrictValidationFailed do
+ Topic.new.valid?
+ end
+ end
+
+ def test_strict_validation_not_fails
+ Topic.validates :title, :strict => true, :presence => true
+ assert Topic.new(:title => "hello").valid?
+ end
+
+ def test_strict_validation_particular_validator
+ Topic.validates :title, :presence => {:strict => true}
+ assert_raises ActiveModel::StrictValidationFailed do
+ Topic.new.valid?
+ end
+ end
+
+ def test_strict_validation_in_custom_validator_helper
+ Topic.validates_presence_of :title, :strict => true
+ assert_raises ActiveModel::StrictValidationFailed do
+ Topic.new.valid?
+ end
+ end
+
+ def test_validates_with_bang
+ Topic.validates! :title, :presence => true
+ assert_raises ActiveModel::StrictValidationFailed do
+ Topic.new.valid?
+ end
+ end
end