diff --git a/mwparserfromhell/parser/builder.py b/mwparserfromhell/parser/builder.py index 2cd7831..e89fb33 100644 --- a/mwparserfromhell/parser/builder.py +++ b/mwparserfromhell/parser/builder.py @@ -83,7 +83,7 @@ class Builder(object): tokens.TemplateClose)): self._tokens.append(token) value = self._pop() - if not key: + if key is None: key = self._wrap([Text(str(default))]) return Parameter(key, value, showkey) else: diff --git a/tests/test_builder.py b/tests/test_builder.py index 2d44b6c..6b46f71 100644 --- a/tests/test_builder.py +++ b/tests/test_builder.py @@ -72,6 +72,14 @@ class TestBuilder(TreeEqualityTestCase): wrap([Template(wraptext("foo"), params=[ Parameter(wraptext("bar"), wraptext("baz"))])])), + ([tokens.TemplateOpen(), tokens.TemplateParamSeparator(), + tokens.TemplateParamSeparator(), tokens.TemplateParamEquals(), + tokens.TemplateParamSeparator(), tokens.TemplateClose()], + wrap([Template(wrap([]), params=[ + Parameter(wraptext("1"), wrap([]), showkey=False), + Parameter(wrap([]), wrap([]), showkey=True), + Parameter(wraptext("2"), wrap([]), showkey=False)])])), + ([tokens.TemplateOpen(), tokens.Text(text="foo"), tokens.TemplateParamSeparator(), tokens.Text(text="bar"), tokens.TemplateParamEquals(), tokens.Text(text="baz"),