@@ -70,12 +70,23 @@ def setup
70
70
assert_equal Hash [ :'en' , { :foo => { :bar => 'bar' , :baz => 'baz' } } ] , translations
71
71
end
72
72
73
- test "simple store_translations: do not store translations for locales not explicitly marked as available" do
73
+ test "simple store_translations: do not store translations unavailable locales if enforce_available_locales is true" do
74
+ begin
75
+ I18n . enforce_available_locales = true
76
+ I18n . available_locales = [ :en , :es ]
77
+ store_translations ( :fr , :foo => { :bar => 'barfr' , :baz => 'bazfr' } )
78
+ store_translations ( :es , :foo => { :bar => 'bares' , :baz => 'bazes' } )
79
+ assert_nil translations [ :fr ]
80
+ assert_equal Hash [ :foo , { :bar => 'bares' , :baz => 'bazes' } ] , translations [ :es ]
81
+ ensure
82
+ I18n . config . enforce_available_locales = false
83
+ end
84
+ end
85
+
86
+ test "simple store_translations: store translations for unavailable locales if enforce_available_locales is false" do
74
87
I18n . available_locales = [ :en , :es ]
75
88
store_translations ( :fr , :foo => { :bar => 'barfr' , :baz => 'bazfr' } )
76
- store_translations ( :es , :foo => { :bar => 'bares' , :baz => 'bazes' } )
77
- assert_nil translations [ :fr ]
78
- assert_equal Hash [ :foo , { :bar => 'bares' , :baz => 'bazes' } ] , translations [ :es ]
89
+ assert_equal Hash [ :foo , { :bar => 'barfr' , :baz => 'bazfr' } ] , translations [ :fr ]
79
90
end
80
91
81
92
# reloading translations
0 commit comments