mirror of
https://github.com/kemko/liquid.git
synced 2026-01-01 15:55:40 +03:00
Use named param format from liquid
This commit is contained in:
@@ -421,8 +421,9 @@ module Liquid
|
||||
result.is_a?(BigDecimal) ? result.to_f : result
|
||||
end
|
||||
|
||||
def default(input, default_value = '', allow_false: false)
|
||||
if (allow_false ? input.nil? : !input) || (input.respond_to?(:empty?) && input.empty?)
|
||||
def default(input, default_value = '', options = {})
|
||||
options = {} unless options.is_a?(Hash)
|
||||
if (options["allow_false"] == true ? input.nil? : !input) || (input.respond_to?(:empty?) && input.empty?)
|
||||
default_value
|
||||
else
|
||||
input
|
||||
|
||||
@@ -682,15 +682,17 @@ class StandardFiltersTest < Minitest::Test
|
||||
assert_equal "bar", @filters.default(false, "bar")
|
||||
assert_equal "bar", @filters.default([], "bar")
|
||||
assert_equal "bar", @filters.default({}, "bar")
|
||||
assert_template_result('bar', "{{ false | default: 'bar' }}")
|
||||
end
|
||||
|
||||
def test_default_handle_false
|
||||
assert_equal "foo", @filters.default("foo", "bar", allow_false: true)
|
||||
assert_equal "bar", @filters.default(nil, "bar", allow_false: true)
|
||||
assert_equal "bar", @filters.default("", "bar", allow_false: true)
|
||||
assert_equal false, @filters.default(false, "bar", allow_false: true)
|
||||
assert_equal "bar", @filters.default([], "bar", allow_false: true)
|
||||
assert_equal "bar", @filters.default({}, "bar", allow_false: true)
|
||||
assert_equal "foo", @filters.default("foo", "bar", "allow_false" => true)
|
||||
assert_equal "bar", @filters.default(nil, "bar", "allow_false" => true)
|
||||
assert_equal "bar", @filters.default("", "bar", "allow_false" => true)
|
||||
assert_equal false, @filters.default(false, "bar", "allow_false" => true)
|
||||
assert_equal "bar", @filters.default([], "bar", "allow_false" => true)
|
||||
assert_equal "bar", @filters.default({}, "bar", "allow_false" => true)
|
||||
assert_template_result('false', "{{ false | default: 'bar', allow_false: true }}")
|
||||
end
|
||||
|
||||
def test_cannot_access_private_methods
|
||||
|
||||
Reference in New Issue
Block a user