Commit graph

24 commits

Author SHA1 Message Date
Brett Smith
99dbd1ac95 tests: Promote date_seq to testutil. 2020-04-22 09:17:58 -04:00
Brett Smith
5aa30e5456 reports.core: Start Balance class. 2020-04-12 14:56:00 -04:00
Brett Smith
01c3b975d8 data: Fix Amount.__new__.
See the comments for background and rationale.
2020-04-11 22:26:01 -04:00
Brett Smith
4eaba1ebf6 data: Add is_opening_balance_txn function. 2020-04-09 15:11:16 -04:00
Brett Smith
d66ba8773f data: Make balance_of currency-aware. 2020-04-09 14:13:07 -04:00
Brett Smith
28e59e7a3b data: Add balance_of() function. 2020-04-08 11:55:00 -04:00
Brett Smith
a9eab2d4ea meta_receivable_documentation: Start hook. 2020-03-31 11:42:21 -04:00
Brett Smith
30d371278a plugin: Refactor hooks to use new payment-related methods. 2020-03-29 10:30:54 -04:00
Brett Smith
93feb2f4a3 data: Add Posting.is_payment() method. 2020-03-29 10:18:51 -04:00
Brett Smith
2909c405e6 meta_receipt: Start hook. 2020-03-28 22:19:49 -04:00
Brett Smith
d9420ac2b6 meta_invoice: Start hook. 2020-03-28 14:31:17 -04:00
Brett Smith
9b63d898af data: Add Metadata class.
As I start writing more link-checking hooks, I want a common place to
write link-parsing code.  This new class will be that place.
2020-03-28 13:35:38 -04:00
Brett Smith
91a436abd5 testutil: Fix missing return typo. 2020-03-25 10:50:50 -04:00
Brett Smith
4874a107e8 meta_rt_links: Start hook. 2020-03-25 00:12:20 -04:00
Brett Smith
d5a6141f6d rtutil: Start module.
For now, this is basically the Python version of
ledger-tag-convert.plx.  It knows how to create RT web links from
ticket and attachment IDs.  It confirms that those objects actually
exist too.  It may grow to encompass other functionality in the
future.
2020-03-24 17:23:54 -04:00
Brett Smith
f09f029fc4 config: Add Config.rt_client method. 2020-03-24 09:08:08 -04:00
Brett Smith
8d3816a8fd config: Add Config.rt_credentials method.
This loads settings from the same environment variables and ~/.rtrc
file as the rt CLI.

Note that it does *not* support RTCONFIG and the config file
searching, because right now that seems like more work for more
trouble to me.
2020-03-23 15:19:15 -04:00
Brett Smith
1500d2d9d8 meta_project: Start hook. 2020-03-20 12:08:10 -04:00
Brett Smith
0d370c445b plugin: User configuration is passed to hooks on initialization. 2020-03-19 17:23:27 -04:00
Brett Smith
f1c115de49 testutil: Improve check_post_meta error reporting.
This version makes it easier to get diffs between the expected
and actual metadata.
2020-03-19 09:32:06 -04:00
Brett Smith
e7720b8fb8 tests: Add check_post_meta.
This makes it simple to conveniently check all posting metadata in tests.
2020-03-16 10:15:31 -04:00
Brett Smith
547ae65780 plugin.core: _meta_set properly handles when post.meta is None.
post is a NamedTuple, so attribute assignment is not allowed.
Instead we have to construct a whole new Posting.
2020-03-08 11:32:03 -04:00
Brett Smith
16c47c64b2 expenseAllocation: Date-limit the transactions we work on.
This prevents the plugin from giving meaning to postings that
might not really be there.
2020-03-05 14:37:47 -05:00
Brett Smith
7862919022 expenseAllocation: Start checker.
This is the simplest version of a common validation we're going to do:
make sure that a particular piece of metadata has one of a set of
values.

This checker needs some bounds checking but I wanted to err on the
side of committing this early because it introduces so much base
infrastructure.
2020-03-05 12:05:13 -05:00