diff --git a/tests/test_plugin_run.py b/tests/test_plugin_run.py index 957e280a653e5ddf745c72f76b8e5539c6588338..521193490bd94db6528af9c7f8bfdf1b8bee6d08 100644 --- a/tests/test_plugin_run.py +++ b/tests/test_plugin_run.py @@ -21,7 +21,9 @@ from . import testutil from conservancy_beancount import plugin CONFIG_MAP = {} +HOOK_REGISTRY = plugin.HookRegistry() +@HOOK_REGISTRY.add_hook class TransactionCounter: HOOK_GROUPS = frozenset(['Transaction', 'counter']) @@ -29,6 +31,7 @@ class TransactionCounter: return ['txn:{}'.format(id(txn))] +@HOOK_REGISTRY.add_hook class PostingCounter(TransactionCounter): HOOK_GROUPS = frozenset(['Posting', 'counter']) @@ -44,8 +47,6 @@ def map_errors(errors): return retval def test_with_multiple_hooks(): - txn_counter = TransactionCounter() - post_counter = PostingCounter() in_entries = [ testutil.Transaction(postings=[ ('Income:Donations', -25), @@ -56,14 +57,13 @@ def test_with_multiple_hooks(): ('Liabilites:CreditCard', -10), ]), ] - out_entries, errors = plugin.run(in_entries, CONFIG_MAP, [txn_counter, post_counter]) + out_entries, errors = plugin.run(in_entries, CONFIG_MAP, '', HOOK_REGISTRY) assert len(out_entries) == 2 errmap = map_errors(errors) assert len(errmap.get('txn', '')) == 2 assert len(errmap.get('post', '')) == 4 def test_with_posting_hooks_only(): - post_counter = PostingCounter() in_entries = [ testutil.Transaction(postings=[ ('Income:Donations', -25), @@ -74,7 +74,7 @@ def test_with_posting_hooks_only(): ('Liabilites:CreditCard', -10), ]), ] - out_entries, errors = plugin.run(in_entries, CONFIG_MAP, [post_counter]) + out_entries, errors = plugin.run(in_entries, CONFIG_MAP, 'Posting', HOOK_REGISTRY) assert len(out_entries) == 2 errmap = map_errors(errors) assert len(errmap.get('txn', '')) == 0