Skip to content

Commit

Permalink
Update changelog, rerun hooks, add an assert
Browse files Browse the repository at this point in the history
  • Loading branch information
earwig committed Jan 18, 2024
1 parent e24c6e4 commit e0150e3
Show file tree
Hide file tree
Showing 6 changed files with 17 additions and 9 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG
@@ -1,6 +1,6 @@
v0.7 (unreleased):

- ...
- Added 'after' parameter to Template.add(). (#281, #315)

v0.6.6 (released January 4, 2024):

Expand Down
4 changes: 3 additions & 1 deletion docs/changelog.rst
Expand Up @@ -7,7 +7,9 @@ v0.7
Unreleased
(`changes <https://github.com/earwig/mwparserfromhell/compare/v0.6.6...main>`__):

- ...
- Added 'after' parameter to Template.add().
(`#281 <https://github.com/earwig/mwparserfromhell/issues/281>`_,
`#315 <https://github.com/earwig/mwparserfromhell/pull/315>`_)

v0.6.6
------
Expand Down
2 changes: 1 addition & 1 deletion scripts/memtest.py
Expand Up @@ -114,7 +114,7 @@ def _print_results(info1, info2):
def run(self):
"""Run the memory test suite."""
width = 1
for (name, _) in self._tests:
for name, _ in self._tests:
if len(name) > width:
width = len(name)

Expand Down
8 changes: 5 additions & 3 deletions src/mwparserfromhell/nodes/template.py
Expand Up @@ -237,8 +237,9 @@ def get(self, name, default=_UNSET):
def __getitem__(self, name):
return self.get(name)

def add(self, name, value, showkey=None, before=None, after=None,
preserve_spacing=True):
def add(
self, name, value, showkey=None, before=None, after=None, preserve_spacing=True
):
"""Add a parameter to the template with a given *name* and *value*.
*name* and *value* can be anything parsable by
Expand Down Expand Up @@ -317,13 +318,14 @@ def add(self, name, value, showkey=None, before=None, after=None,

param = Parameter(name, value, showkey)
if before:
assert after is None, "Cannot set a value for both 'before' and 'after'"
if not isinstance(before, Parameter):
before = self.get(before)
self.params.insert(self.params.index(before), param)
elif after:
if not isinstance(after, Parameter):
after = self.get(after)
self.params.insert(self.params.index(after)+1, param)
self.params.insert(self.params.index(after) + 1, param)
else:
self.params.append(param)
return param
Expand Down
2 changes: 1 addition & 1 deletion src/mwparserfromhell/parser/ctokenizer/avl_tree.c
Expand Up @@ -19,7 +19,7 @@
*/

#define false 0
#define true 1
#define true 1

typedef int bool;

Expand Down
8 changes: 6 additions & 2 deletions tests/test_template.py
Expand Up @@ -334,8 +334,12 @@ def test_add():
node40.add("3", "d")
node41.add("3", "d")
node42.add("b", "hello")
node43 = Template(wraptext("a"), [pgens("b", "c"), pgens("d", "e"), pgens("f", "g")])
node44 = Template(wraptext("a"), [pgens("b", "c"), pgens("d", "e"), pgens("f", "g")])
node43 = Template(
wraptext("a"), [pgens("b", "c"), pgens("d", "e"), pgens("f", "g")]
)
node44 = Template(
wraptext("a"), [pgens("b", "c"), pgens("d", "e"), pgens("f", "g")]
)
node43.add("new_param", "value", after="d")
node44.add("new_param", "value", after="f")

Expand Down

0 comments on commit e0150e3

Please sign in to comment.