misc: override |default_if_none for lazy variables (#77947)
gitea/wcs/pipeline/head This commit looks good
Details
gitea/wcs/pipeline/head This commit looks good
Details
This commit is contained in:
parent
922ceba4f3
commit
63864f16a1
|
@ -2033,6 +2033,9 @@ def test_lazy_variables_missing(pub, variable_test_data):
|
|||
with pytest.raises(KeyError):
|
||||
assert context['form_var_foo_foo_xxx'] == 'bar'
|
||||
|
||||
tmpl = Template('{{form_var_foo_foo_baz_baz|default_if_none:"XXX"}}')
|
||||
assert tmpl.render(context) == 'XXX'
|
||||
|
||||
|
||||
def test_lazy_variables_length(pub, variable_test_data):
|
||||
formdef = FormDef.select()[0]
|
||||
|
|
|
@ -1104,3 +1104,11 @@ def translate(string, context=None):
|
|||
if string is None:
|
||||
return None
|
||||
return get_publisher().translate(string, context=context, register=True)
|
||||
|
||||
|
||||
@register.filter(is_safe=False)
|
||||
def default_if_none(value, arg):
|
||||
value = unlazy(value)
|
||||
if value is None:
|
||||
return arg
|
||||
return value
|
||||
|
|
Loading…
Reference in New Issue