aboutsummaryrefslogtreecommitdiffstats
path: root/activemodel/test/cases
diff options
context:
space:
mode:
authorkakipo <kakipo@gmail.com>2014-08-03 14:50:09 +0900
committerkakipo <kakipo@gmail.com>2014-08-03 14:50:09 +0900
commitc3fa5c3d25d9148d2806db577a2261032b341c34 (patch)
tree02db6c7a7a53bc153dd7bf900c551a16bc351403 /activemodel/test/cases
parentf57cd78a738e1c8cf5a932686e67cd72fdbef301 (diff)
downloadrails-c3fa5c3d25d9148d2806db577a2261032b341c34.tar.gz
rails-c3fa5c3d25d9148d2806db577a2261032b341c34.tar.bz2
rails-c3fa5c3d25d9148d2806db577a2261032b341c34.zip
Allow symbol as values for `tokenize` of `LengthValidator`
Diffstat (limited to 'activemodel/test/cases')
-rw-r--r--activemodel/test/cases/validations/length_validation_test.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/activemodel/test/cases/validations/length_validation_test.rb b/activemodel/test/cases/validations/length_validation_test.rb
index 046ffcb16f..3fa9f9274c 100644
--- a/activemodel/test/cases/validations/length_validation_test.rb
+++ b/activemodel/test/cases/validations/length_validation_test.rb
@@ -331,6 +331,19 @@ class LengthValidationTest < ActiveModel::TestCase
assert_equal ["Your essay must be at least 5 words."], t.errors[:content]
end
+
+ def test_validates_length_of_with_symbol
+ Topic.validates_length_of :content, minimum: 5, too_short: "Your essay must be at least %{count} words.",
+ tokenizer: :my_word_tokenizer
+ t = Topic.new(content: "this content should be long enough")
+ assert t.valid?
+
+ t.content = "not long enough"
+ assert t.invalid?
+ assert t.errors[:content].any?
+ assert_equal ["Your essay must be at least 5 words."], t.errors[:content]
+ end
+
def test_validates_length_of_for_fixnum
Topic.validates_length_of(:approved, is: 4)