summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Sklar <177495+davidsklar@users.noreply.github.com>2022-12-29 13:45:37 -0500
committerMartin Michlmayr <tbm@cyrius.com>2023-01-10 09:15:59 +0800
commit0ade3a55fb84f5d899bcdac3f92dd9af6b370c66 (patch)
treedc8e57f7f1d398c2136be9586e239b3c59096424
parentc43098d5bd91b6af733cb19225ebaf29228c2c50 (diff)
downloadfork-ledger-0ade3a55fb84f5d899bcdac3f92dd9af6b370c66.tar.gz
fork-ledger-0ade3a55fb84f5d899bcdac3f92dd9af6b370c66.tar.bz2
fork-ledger-0ade3a55fb84f5d899bcdac3f92dd9af6b370c66.zip
Python: Transaction.remove_post should call xact_base_t::remove_post
-rw-r--r--src/py_xact.cc2
-rw-r--r--test/python/TransactionTest.py27
2 files changed, 22 insertions, 7 deletions
diff --git a/src/py_xact.cc b/src/py_xact.cc
index 3474c127..5f062294 100644
--- a/src/py_xact.cc
+++ b/src/py_xact.cc
@@ -100,7 +100,7 @@ void export_xact()
return_internal_reference<>())
.def("add_post", &xact_base_t::add_post, with_custodian_and_ward<1, 2>())
- .def("remove_post", &xact_base_t::add_post)
+ .def("remove_post", &xact_base_t::remove_post)
.def("finalize", &xact_base_t::finalize)
diff --git a/test/python/TransactionTest.py b/test/python/TransactionTest.py
index 257eb377..6827720d 100644
--- a/test/python/TransactionTest.py
+++ b/test/python/TransactionTest.py
@@ -6,18 +6,33 @@ import operator
from ledger import *
from datetime import *
-class JournalTestCase(unittest.TestCase):
+class TransactionTestCase(unittest.TestCase):
def setUp(self):
- pass
+ self.journal = read_journal_from_string("""
+2012-03-01 KFC
+ Expenses:Food $21.34
+ Assets:Cash
+2012-03-02 MJT
+ Expenses:Museum $45.67
+ Assets:Cash
+""")
def tearDown(self):
close_journal_files()
- def test_(self):
- pass
-
+ def testAddRemovePosts(self):
+ xacts = [xact for xact in self.journal]
+ x1_posts = [post for post in xacts[1]]
+ for post in x1_posts:
+ xacts[0].add_post(post)
+ xacts[1].remove_post(post)
+ x0_posts = [post for post in xacts[0]]
+ x1_posts = [post for post in xacts[1]]
+ self.assertEqual(len(x0_posts), 4)
+ self.assertEqual(len(x1_posts), 0)
+
def suite():
- return unittest.TestLoader().loadTestsFromTestCase(JournalTestCase)
+ return unittest.TestLoader().loadTestsFromTestCase(TransactionTestCase)
if __name__ == '__main__':
unittest.main()