From 3f9e67de3ac58fd708cb038d5e65976a3635d8cd 2020-03-18 13:00:47 From: Brett Smith Date: 2020-03-18 13:00:47 Subject: [PATCH] meta_tax_implication: Don't enforce on Assets:PrepaidExpenses. --- diff --git a/conservancy_beancount/plugin/meta_tax_implication.py b/conservancy_beancount/plugin/meta_tax_implication.py index 1c4a1eb00bdd92c3c209d2669b8a131fc660a8bf..3f0a61a33d7e365af4ec3a52d940a649b97fe914 100644 --- a/conservancy_beancount/plugin/meta_tax_implication.py +++ b/conservancy_beancount/plugin/meta_tax_implication.py @@ -47,7 +47,7 @@ class MetaTaxImplication(core._NormalizePostingMetadataHook): def _run_on_post(self, txn: Transaction, post: data.Posting) -> bool: return bool( - post.account.startswith('Assets:') + post.account.is_real_asset() and post.units.number and post.units.number < DEFAULT_STOP_AMOUNT ) diff --git a/tests/test_meta_tax_implication.py b/tests/test_meta_tax_implication.py index c5fd4178d2c86854d8dddcfcb674cefb25781fe1..d62658a9f79ff8bb52c4c1e64b0435dba2fc4099 100644 --- a/tests/test_meta_tax_implication.py +++ b/tests/test_meta_tax_implication.py @@ -109,6 +109,16 @@ def test_non_asset_accounts_skipped(account): assert not errors testutil.check_post_meta(txn, None, meta) +def test_prepaid_expenses_skipped(): + txn = testutil.Transaction(postings=[ + ('Expenses:General', 25), + ('Assets:PrepaidExpenses', -25), + ]) + checker = meta_tax_implication.MetaTaxImplication() + errors = list(checker.run(txn)) + assert not errors + testutil.check_post_meta(txn, None, None) + def test_asset_credits_skipped(): txn = testutil.Transaction(postings=[ ('Income:Donations', -25),