Skip to content

Commit

Permalink
Merge pull request #172 from tgoodlet/test_opt_in_args
Browse files Browse the repository at this point in the history
Add a test demonstrating the opt in nature of args
  • Loading branch information
goodboy committed Aug 8, 2018
2 parents 96e94e5 + 429c5fc commit 3a79b52
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 0 deletions.
1 change: 1 addition & 0 deletions changelog/172.trivial.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Add a test exemplifying the opt-in nature of spec defined args.
28 changes: 28 additions & 0 deletions testing/test_invocations.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,34 @@ def hello(self, arg):
assert comprehensible in str(exc.value)


def test_opt_in_args(pm):
"""Verfiy that two hookimpls with mutex args can serve
under the same spec.
"""

class Api(object):
@hookspec
def hello(self, arg1, arg2, common_arg):
"api hook 1"

class Plugin1(object):
@hookimpl
def hello(self, arg1, common_arg):
return arg1 + common_arg

class Plugin2(object):
@hookimpl
def hello(self, arg2, common_arg):
return arg2 + common_arg

pm.add_hookspecs(Api)
pm.register(Plugin1())
pm.register(Plugin2())

results = pm.hook.hello(arg1=1, arg2=2, common_arg=0)
assert results == [2, 1]


def test_call_order(pm):
class Api(object):
@hookspec
Expand Down

0 comments on commit 3a79b52

Please sign in to comment.