aboutsummaryrefslogtreecommitdiffstats
path: root/actionview/test
diff options
context:
space:
mode:
authorJean Boussier <jean.boussier@gmail.com>2019-06-14 13:25:16 +0200
committerJean Boussier <jean.boussier@gmail.com>2019-06-14 14:07:28 +0200
commit5d4a77d324fa30c616d0e05144edc57f10cfb9b5 (patch)
tree088c66820cd4d8868e2d6fac05449663be75ff1d /actionview/test
parent2c3332cc4c0fa77dbe2e13e8a792f80fbd8f4ad3 (diff)
downloadrails-5d4a77d324fa30c616d0e05144edc57f10cfb9b5.tar.gz
rails-5d4a77d324fa30c616d0e05144edc57f10cfb9b5.tar.bz2
rails-5d4a77d324fa30c616d0e05144edc57f10cfb9b5.zip
Fix TranslationHelper#translate handling of Hash defaults
It is sometimes expected of the `translate` methods to return a Hash, for instance it's the case of the `number.format` key. As such users might need to specify a Hash default, e.g. `translate(:'some.format', default: { separator: '.', delimiter: ',' })`. This works as expected with the `I18n.translate` methods, however `TranslationHelper#translate` apply `Array()` on the default value. As a result the default value end up as `[:separator, '.', :delimiter, ',']`.
Diffstat (limited to 'actionview/test')
-rw-r--r--actionview/test/template/translation_helper_test.rb5
1 files changed, 5 insertions, 0 deletions
diff --git a/actionview/test/template/translation_helper_test.rb b/actionview/test/template/translation_helper_test.rb
index 9afdc3c68f..3475a1dada 100644
--- a/actionview/test/template/translation_helper_test.rb
+++ b/actionview/test/template/translation_helper_test.rb
@@ -121,6 +121,11 @@ class TranslationHelperTest < ActiveSupport::TestCase
I18n.exception_handler = old_exception_handler
end
+ def test_hash_default
+ default = { separator: ".", delimiter: "," }
+ assert_equal default, translate(:'special.number.format', default: default)
+ end
+
def test_translation_returning_an_array
expected = %w(foo bar)
assert_equal expected, translate(:"translations.array")