diff options
author | Bogdan Gusiev <agresso@gmail.com> | 2011-08-17 17:26:00 +0300 |
---|---|---|
committer | Bogdan Gusiev <agresso@gmail.com> | 2011-08-17 17:26:00 +0300 |
commit | 8620bf90c5e486e1ec44b9aabb63f8c848668ed2 (patch) | |
tree | 4f88a3795abad13a3639ac5c53f3040a37a34a87 /activemodel/test/cases | |
parent | 5912f3f97e05862958f6b5383586a791491cdf6e (diff) | |
download | rails-8620bf90c5e486e1ec44b9aabb63f8c848668ed2.tar.gz rails-8620bf90c5e486e1ec44b9aabb63f8c848668ed2.tar.bz2 rails-8620bf90c5e486e1ec44b9aabb63f8c848668ed2.zip |
Implemented strict validation concept
In order to deliver debug information to dev team
instead of display error message to end user
Implemented strict validation concept
that suppose to define validation that always raise exception when fails
Diffstat (limited to 'activemodel/test/cases')
-rw-r--r-- | activemodel/test/cases/validations_test.rb | 33 |
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 |