summaryrefslogtreecommitdiff
path: root/vendor/plugins/globalize2/test/i18n
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/plugins/globalize2/test/i18n')
-rw-r--r--vendor/plugins/globalize2/test/i18n/missing_translations_test.rb36
1 files changed, 36 insertions, 0 deletions
diff --git a/vendor/plugins/globalize2/test/i18n/missing_translations_test.rb b/vendor/plugins/globalize2/test/i18n/missing_translations_test.rb
new file mode 100644
index 00000000..8641d57f
--- /dev/null
+++ b/vendor/plugins/globalize2/test/i18n/missing_translations_test.rb
@@ -0,0 +1,36 @@
1require File.join( File.dirname(__FILE__), '..', 'test_helper' )
2require 'globalize/i18n/missing_translations_log_handler'
3
4class MissingTranslationsTest < ActiveSupport::TestCase
5 test "defines I18n.missing_translations_logger accessor" do
6 assert I18n.respond_to?(:missing_translations_logger)
7 end
8
9 test "defines I18n.missing_translations_logger= writer" do
10 assert I18n.respond_to?(:missing_translations_logger=)
11 end
12end
13
14class TestLogger < String
15 def warn(msg) self.concat msg; end
16end
17
18class LogMissingTranslationsTest < ActiveSupport::TestCase
19 def setup
20 @locale, @key, @options = :en, :foo, {}
21 @exception = I18n::MissingTranslationData.new(@locale, @key, @options)
22
23 @logger = TestLogger.new
24 I18n.missing_translations_logger = @logger
25 end
26
27 test "still returns the exception message for MissingTranslationData exceptions" do
28 result = I18n.send(:missing_translations_log_handler, @exception, @locale, @key, @options)
29 assert_equal 'translation missing: en, foo', result
30 end
31
32 test "logs the missing translation to I18n.missing_translations_logger" do
33 I18n.send(:missing_translations_log_handler, @exception, @locale, @key, @options)
34 assert_equal 'translation missing: en, foo', @logger
35 end
36end