mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Add singular and plural form for some validation messages
This commit is contained in:
parent
d4a2f7e8cc
commit
6604ce63e8
3 changed files with 28 additions and 6 deletions
|
@ -1,3 +1,7 @@
|
|||
* Add plural and singular form for length validator's default messages
|
||||
|
||||
*Abd ar-Rahman Hamid*
|
||||
|
||||
* Introduce `validate` as an alias for `valid?`.
|
||||
|
||||
This is more intuitive when you want to run validations but don't care about
|
||||
|
|
|
@ -14,9 +14,15 @@ en:
|
|||
empty: "can't be empty"
|
||||
blank: "can't be blank"
|
||||
present: "must be blank"
|
||||
too_long: "is too long (maximum is %{count} characters)"
|
||||
too_short: "is too short (minimum is %{count} characters)"
|
||||
wrong_length: "is the wrong length (should be %{count} characters)"
|
||||
too_long:
|
||||
one: "is too long (maximum is 1 character)"
|
||||
other: "is too long (maximum is %{count} characters)"
|
||||
too_short:
|
||||
one: "is too short (minimum is 1 character)"
|
||||
other: "is too short (minimum is %{count} characters)"
|
||||
wrong_length:
|
||||
one: "is the wrong length (should be 1 character)"
|
||||
other: "is the wrong length (should be %{count} characters)"
|
||||
not_a_number: "is not a number"
|
||||
not_an_integer: "must be an integer"
|
||||
greater_than: "must be greater than %{count}"
|
||||
|
|
|
@ -72,28 +72,40 @@ class I18nGenerateMessageValidationTest < ActiveModel::TestCase
|
|||
end
|
||||
|
||||
# validates_length_of: generate_message(attr, :too_long, message: custom_message, count: option_value.end)
|
||||
def test_generate_message_too_long_with_default_message
|
||||
def test_generate_message_too_long_with_default_message_plural
|
||||
assert_equal "is too long (maximum is 10 characters)", @person.errors.generate_message(:title, :too_long, count: 10)
|
||||
end
|
||||
|
||||
def test_generate_message_too_long_with_default_message_singular
|
||||
assert_equal "is too long (maximum is 1 character)", @person.errors.generate_message(:title, :too_long, count: 1)
|
||||
end
|
||||
|
||||
def test_generate_message_too_long_with_custom_message
|
||||
assert_equal 'custom message 10', @person.errors.generate_message(:title, :too_long, message: 'custom message %{count}', count: 10)
|
||||
end
|
||||
|
||||
# validates_length_of: generate_message(attr, :too_short, default: custom_message, count: option_value.begin)
|
||||
def test_generate_message_too_short_with_default_message
|
||||
def test_generate_message_too_short_with_default_message_plural
|
||||
assert_equal "is too short (minimum is 10 characters)", @person.errors.generate_message(:title, :too_short, count: 10)
|
||||
end
|
||||
|
||||
def test_generate_message_too_short_with_default_message_singular
|
||||
assert_equal "is too short (minimum is 1 character)", @person.errors.generate_message(:title, :too_short, count: 1)
|
||||
end
|
||||
|
||||
def test_generate_message_too_short_with_custom_message
|
||||
assert_equal 'custom message 10', @person.errors.generate_message(:title, :too_short, message: 'custom message %{count}', count: 10)
|
||||
end
|
||||
|
||||
# validates_length_of: generate_message(attr, :wrong_length, message: custom_message, count: option_value)
|
||||
def test_generate_message_wrong_length_with_default_message
|
||||
def test_generate_message_wrong_length_with_default_message_plural
|
||||
assert_equal "is the wrong length (should be 10 characters)", @person.errors.generate_message(:title, :wrong_length, count: 10)
|
||||
end
|
||||
|
||||
def test_generate_message_wrong_length_with_default_message_singular
|
||||
assert_equal "is the wrong length (should be 1 character)", @person.errors.generate_message(:title, :wrong_length, count: 1)
|
||||
end
|
||||
|
||||
def test_generate_message_wrong_length_with_custom_message
|
||||
assert_equal 'custom message 10', @person.errors.generate_message(:title, :wrong_length, message: 'custom message %{count}', count: 10)
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue