From b078f7fd3910b0b174bc951cc8c0d27536b09c16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Valim?= Date: Mon, 11 Jan 2010 23:37:48 +0100 Subject: Fix typos and add tests to ensure they will be caught the next time. --- activemodel/lib/active_model/validations/numericality.rb | 4 ++-- activemodel/lib/active_model/validations/validates.rb | 2 +- .../test/cases/validations/numericality_validation_test.rb | 8 ++++++++ 3 files changed, 11 insertions(+), 3 deletions(-) (limited to 'activemodel') diff --git a/activemodel/lib/active_model/validations/numericality.rb b/activemodel/lib/active_model/validations/numericality.rb index adf34bf454..c6d84c5312 100644 --- a/activemodel/lib/active_model/validations/numericality.rb +++ b/activemodel/lib/active_model/validations/numericality.rb @@ -10,8 +10,8 @@ module ActiveModel end def check_validity! - keys = CHECKS.keys - [:odd, :event] - options.slice(*keys) do |option, value| + keys = CHECKS.keys - [:odd, :even] + options.slice(*keys).each do |option, value| next if value.is_a?(Numeric) || value.is_a?(Proc) || value.is_a?(Symbol) raise ArgumentError, ":#{option} must be a number, a symbol or a proc" end diff --git a/activemodel/lib/active_model/validations/validates.rb b/activemodel/lib/active_model/validations/validates.rb index 80924f50d6..4c82a993ae 100644 --- a/activemodel/lib/active_model/validations/validates.rb +++ b/activemodel/lib/active_model/validations/validates.rb @@ -54,7 +54,7 @@ module ActiveModel # The validators hash can also handle regular expressions, ranges and arrays: # # validates :email, :format => /@/ - # validates :gender, :inclusion => %w(mail female) + # validates :gender, :inclusion => %w(male female) # validates :password, :length => 6..20 # # Finally, the options :if, :unless, :on, :allow_blank and :allow_nil can be given diff --git a/activemodel/test/cases/validations/numericality_validation_test.rb b/activemodel/test/cases/validations/numericality_validation_test.rb index 75cd654f98..38b3f87e93 100644 --- a/activemodel/test/cases/validations/numericality_validation_test.rb +++ b/activemodel/test/cases/validations/numericality_validation_test.rb @@ -154,6 +154,14 @@ class NumericalityValidationTest < ActiveModel::TestCase Person.reset_callbacks(:validate) end + def test_validates_numericality_with_invalid_args + assert_raise(ArgumentError){ Topic.validates_numericality_of :approved, :greater_than_or_equal_to => "foo" } + assert_raise(ArgumentError){ Topic.validates_numericality_of :approved, :less_than_or_equal_to => "foo" } + assert_raise(ArgumentError){ Topic.validates_numericality_of :approved, :greater_than => "foo" } + assert_raise(ArgumentError){ Topic.validates_numericality_of :approved, :less_than => "foo" } + assert_raise(ArgumentError){ Topic.validates_numericality_of :approved, :equal_to => "foo" } + end + private def invalid!(values, error = nil) -- cgit v1.2.3