diff options
author | Kane <kane@raktefakt.net> | 2009-08-31 13:34:46 -0500 |
---|---|---|
committer | Joshua Peek <josh@joshpeek.com> | 2009-08-31 13:35:14 -0500 |
commit | cf9f361699d72b5b34a655f8940c024cba0f0e09 (patch) | |
tree | e2495cb3a2677063449b60ee37ace2c9b0bbf61b /activemodel/test | |
parent | 7e3abbfdc2087e397816f2b81b739558c064c576 (diff) | |
download | rails-cf9f361699d72b5b34a655f8940c024cba0f0e09.tar.gz rails-cf9f361699d72b5b34a655f8940c024cba0f0e09.tar.bz2 rails-cf9f361699d72b5b34a655f8940c024cba0f0e09.zip |
added proc and symbol support to validates_numericality_of [#3049 state:resolved]
Signed-off-by: Joshua Peek <josh@joshpeek.com>
Diffstat (limited to 'activemodel/test')
-rw-r--r-- | activemodel/test/cases/validations/numericality_validation_test.rb | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/activemodel/test/cases/validations/numericality_validation_test.rb b/activemodel/test/cases/validations/numericality_validation_test.rb index 0af6eb69ce..d3201966dc 100644 --- a/activemodel/test/cases/validations/numericality_validation_test.rb +++ b/activemodel/test/cases/validations/numericality_validation_test.rb @@ -106,6 +106,24 @@ class NumericalityValidationTest < ActiveModel::TestCase valid!([2]) end + def test_validates_numericality_with_proc + Topic.send(:define_method, :min_approved, lambda { 5 }) + Topic.validates_numericality_of :approved, :greater_than_or_equal_to => Proc.new {|topic| topic.min_approved } + + invalid!([3, 4]) + valid!([5, 6]) + Topic.send(:remove_method, :min_approved) + end + + def test_validates_numericality_with_symbol + Topic.send(:define_method, :max_approved, lambda { 5 }) + Topic.validates_numericality_of :approved, :less_than_or_equal_to => :max_approved + + invalid!([6]) + valid!([4, 5]) + Topic.send(:remove_method, :max_approved) + end + def test_validates_numericality_with_numeric_message Topic.validates_numericality_of :approved, :less_than => 4, :message => "smaller than {{count}}" topic = Topic.new("title" => "numeric test", "approved" => 10) |