Move I18n to options

This commit is contained in:
Simon Eskildsen
2013-08-30 12:31:57 -04:00
parent df5980f23f
commit 29cdabc30e
2 changed files with 11 additions and 8 deletions
+6 -2
View File
@@ -14,6 +14,10 @@ module Liquid
# template.render('user_name' => 'bob') # template.render('user_name' => 'bob')
# #
class Template class Template
DEFAULT_OPTIONS = {
:locale => I18n.new
}
attr_accessor :root, :resource_limits attr_accessor :root, :resource_limits
@@file_system = BlankFileSystem.new @@file_system = BlankFileSystem.new
@@ -68,7 +72,7 @@ module Liquid
# Parse source code. # Parse source code.
# Returns self for easy chaining # Returns self for easy chaining
def parse(source, options = {}) def parse(source, options = {})
@root = Document.new(tokenize(source), options) @root = Document.new(tokenize(source), DEFAULT_OPTIONS.merge(options))
@warnings = nil @warnings = nil
self self
end end
@@ -79,7 +83,7 @@ module Liquid
end end
def registers def registers
@registers ||= {:locale => Liquid::I18n.new} @registers ||= {}
end end
def assigns def assigns
+5 -6
View File
@@ -144,17 +144,16 @@ class TemplateTest < Test::Unit::TestCase
assert_equal 'haha', t.parse("{{baz}}").render(drop) assert_equal 'haha', t.parse("{{baz}}").render(drop)
end end
def test_sets_default_localization_in_context def test_sets_default_localization_in_document
t = Template.new t = Template.new
assert_instance_of I18n, t.registers[:locale] assert_instance_of I18n, t.root.options[:locale]
end end
def test_sets_default_localization_in_context_with_quick_initialization def test_sets_default_localization_in_context_with_quick_initialization
t = Template.new t = Template.new
t.registers[:locale] = I18n.new(fixture("en_locale.yml")) t.parse('{{foo}}', locale: I18n.new(fixture("en_locale.yml")))
t.parse('{{foo}}')
assert_instance_of I18n, t.registers[:locale] assert_instance_of I18n, t.root.options[:locale]
assert_equal fixture("en_locale.yml"), t.registers[:locale].path assert_equal fixture("en_locale.yml"), t.root.options[:locale].path
end end
end end