Skip to content

Commit

Permalink
tests: added beforeafter event tests
Browse files Browse the repository at this point in the history
  • Loading branch information
David Hartmann committed Jul 22, 2021
1 parent a3460d4 commit 52def4d
Show file tree
Hide file tree
Showing 13 changed files with 158 additions and 5 deletions.
Empty file.
8 changes: 8 additions & 0 deletions tests/beforeafter/modules/afterevent/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@

def after_dosomething(event):
print("after_-event called")
event.hook["result"] *= 2


def register(mf):
mf.register_event('after_dosomething', after_dosomething, unique=False)
Empty file.
8 changes: 8 additions & 0 deletions tests/beforeafter/modules/afterevent2/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@

def after_dosomething_as_well(event):
print("after_-event (2) called")
event.hook["result"] += 1


def register(mf):
mf.register_event('after_dosomething', after_dosomething_as_well, unique=False)
Empty file.
8 changes: 8 additions & 0 deletions tests/beforeafter/modules/beforeevent/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@

def before_dosomething(event):
print("before_-event called")
event.hook["args"][0] *= 2


def register(mf):
mf.register_event('before_dosomething', before_dosomething, unique=False)
Empty file.
8 changes: 8 additions & 0 deletions tests/beforeafter/modules/beforeevent2/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@

def before_dosomething_as_well(event):
print("before_-event (2) called")
event.hook["args"][0] += 1


def register(mf):
mf.register_event('before_dosomething', before_dosomething_as_well, unique=False)
6 changes: 2 additions & 4 deletions tests/beforeafter/modules/directcalls/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,12 @@ def dosomething():
print("event called")


def before_dosomething(*args, **kwargs):
def before_dosomething():
print("before_-event called")
return args, kwargs


def after_dosomething(res, *args, **kwargs):
def after_dosomething():
print("after_-event called")
return res, args, kwargs


def main(event):
Expand Down
Empty file.
14 changes: 14 additions & 0 deletions tests/beforeafter/modules/setup/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@

# note that this function does not ask for any miniflask variables (state/event/mf)
def dosomething(val):
print("event called with value: %i" % val)
return val


def main(event):
print("event returned value: %i" % event.dosomething(42))


def register(mf):
mf.register_event('dosomething', dosomething)
mf.register_event('main', main)
110 changes: 110 additions & 0 deletions tests/beforeafter/test_beforeafter.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
from pathlib import Path
import miniflask # noqa: E402


def test_beforeafter_setup(capsys):
mf = miniflask.init(
module_dirs=str(Path(__file__).parent / "modules"),
debug=True
)
mf.load("setup")
mf.parse_args([])
captured = capsys.readouterr()
mf.event.main()
captured = capsys.readouterr()
assert captured.out == """
event called with value: 42
event returned value: 42
""".lstrip()


def test_beforeafter_before(capsys):
mf = miniflask.init(
module_dirs=str(Path(__file__).parent / "modules"),
debug=True
)
mf.load(["setup", "beforeevent", "beforeevent2"])
mf.parse_args([])
captured = capsys.readouterr()
mf.event.main()
captured = capsys.readouterr()
assert captured.out == """
before_-event called
before_-event (2) called
event called with value: 85
event returned value: 85
""".lstrip()


def test_beforeafter_before_otherorder(capsys):
mf = miniflask.init(
module_dirs=str(Path(__file__).parent / "modules"),
debug=True
)
mf.load(["setup", "beforeevent2", "beforeevent"])
mf.parse_args([])
captured = capsys.readouterr()
mf.event.main()
captured = capsys.readouterr()
assert captured.out == """
before_-event (2) called
before_-event called
event called with value: 86
event returned value: 86
""".lstrip()


def test_beforeafter_after(capsys):
mf = miniflask.init(
module_dirs=str(Path(__file__).parent / "modules"),
debug=True
)
mf.load(["setup", "afterevent", "afterevent2"])
mf.parse_args([])
captured = capsys.readouterr()
mf.event.main()
captured = capsys.readouterr()
assert captured.out == """
event called with value: 42
after_-event called
after_-event (2) called
event returned value: 85
""".lstrip()


def test_beforeafter_after_otherorder(capsys):
mf = miniflask.init(
module_dirs=str(Path(__file__).parent / "modules"),
debug=True
)
mf.load(["setup", "afterevent2", "afterevent"])
mf.parse_args([])
captured = capsys.readouterr()
mf.event.main()
captured = capsys.readouterr()
assert captured.out == """
event called with value: 42
after_-event (2) called
after_-event called
event returned value: 86
""".lstrip()


def test_beforeafter_all(capsys):
mf = miniflask.init(
module_dirs=str(Path(__file__).parent / "modules"),
debug=True
)
mf.load(["setup", "beforeevent", "beforeevent2", "afterevent", "afterevent2"])
mf.parse_args([])
captured = capsys.readouterr()
mf.event.main()
captured = capsys.readouterr()
assert captured.out == """
before_-event called
before_-event (2) called
event called with value: 85
after_-event called
after_-event (2) called
event returned value: 171
""".lstrip()
1 change: 0 additions & 1 deletion tests/beforeafter/test_nonevent_beforeafter.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@

def test_directcall_beforeafter(capsys):
mf.load("directcalls")
# mf.run(modules=["directcalls"], argv=[], call="")
mf.parse_args([])
captured = capsys.readouterr()
mf.event.main()
Expand Down

0 comments on commit 52def4d

Please sign in to comment.