aboutsummaryrefslogtreecommitdiffstats
path: root/actionview
diff options
context:
space:
mode:
authorKasper Timm Hansen <kaspth@gmail.com>2015-10-28 21:52:33 +0100
committerKasper Timm Hansen <kaspth@gmail.com>2015-10-28 21:52:33 +0100
commit0fb2d1a0ba3360e928a7ac9d20378d7f5fbf915f (patch)
tree2efdfd355b0269f428198b56eaa00c7d6952ed55 /actionview
parent367e4832294c35091ab0928df52e700d9710af7e (diff)
downloadrails-0fb2d1a0ba3360e928a7ac9d20378d7f5fbf915f.tar.gz
rails-0fb2d1a0ba3360e928a7ac9d20378d7f5fbf915f.tar.bz2
rails-0fb2d1a0ba3360e928a7ac9d20378d7f5fbf915f.zip
Ignore scope in missing translation input.
It's already represented in the key name. Demonstrate with a test. Also test that the default isn't output.
Diffstat (limited to 'actionview')
-rw-r--r--actionview/lib/action_view/helpers/translation_helper.rb2
-rw-r--r--actionview/test/template/translation_helper_test.rb8
2 files changed, 9 insertions, 1 deletions
diff --git a/actionview/lib/action_view/helpers/translation_helper.rb b/actionview/lib/action_view/helpers/translation_helper.rb
index dde1ef22ac..4c4d2c4457 100644
--- a/actionview/lib/action_view/helpers/translation_helper.rb
+++ b/actionview/lib/action_view/helpers/translation_helper.rb
@@ -90,7 +90,7 @@ module ActionView
keys = I18n.normalize_keys(e.locale, e.key, e.options[:scope])
title = "translation missing: #{keys.join('.')}"
- interpolations = options.except(:default)
+ interpolations = options.except(:default, :scope)
if interpolations.any?
title << ", " << interpolations.map { |k, v| "#{k}: #{ERB::Util.html_escape(v)}" }.join(', ')
end
diff --git a/actionview/test/template/translation_helper_test.rb b/actionview/test/template/translation_helper_test.rb
index 261576bead..631bceadd8 100644
--- a/actionview/test/template/translation_helper_test.rb
+++ b/actionview/test/template/translation_helper_test.rb
@@ -66,6 +66,14 @@ class TranslationHelperTest < ActiveSupport::TestCase
assert translate(:"translations.missing").html_safe?
end
+ def test_returns_missing_translation_message_does_filters_out_i18n_options
+ expected = '<span class="translation_missing" title="translation missing: en.translations.missing, year: 2015">Missing</span>'
+ assert_equal expected, translate(:"translations.missing", year: '2015', default: [])
+
+ expected = '<span class="translation_missing" title="translation missing: en.scoped.translations.missing, year: 2015">Missing</span>'
+ assert_equal expected, translate(:"translations.missing", year: '2015', scope: %i(scoped))
+ end
+
def test_raises_missing_translation_message_with_raise_config_option
ActionView::Base.raise_on_missing_translations = true