Commit graph

193 commits

Author SHA1 Message Date
John Wiegley
ef5c0b37d5 Added baseline test for "sample.dat" contents 2009-11-20 18:24:22 -05:00
John Wiegley
4e30fcdf40 Many improvements to Ledger's Python bindings 2009-11-19 22:24:24 -05:00
John Wiegley
63fee4c837 Added an --unrealized option, for use with bal -V
When this option is on, then in balance report which show market values,
any gains or losses in value will be balanced into a pair of accounts
called Equity:Unrealized Gains and Equity:Unrealized Losses.
2009-11-19 02:00:10 -05:00
John Wiegley
e4b3f0bb3a The new period parser is passing all tests 2009-11-18 05:45:48 -05:00
John Wiegley
c28d828d8e Renamed date_interval_t::end to finish 2009-11-17 21:51:51 -05:00
John Wiegley
b2c426abae Fixed one of the ExprTests 2009-11-15 22:13:53 -05:00
John Wiegley
ee93b5c740 Added baseline test for reg -n 2009-11-14 02:32:18 -05:00
John Wiegley
c182b7051b Renamed the pricesdb command to pricedb 2009-11-12 01:43:57 -05:00
John Wiegley
e8ea2d4938 Automated postings defer amount expression calculation
This allows for value expressions to be used which reference the
incoming posting, for example:

  = Income:Clients:
    (Liabilities:Taxes:VAT1)  (floor(amount) * 1)
    (Liabilities:Taxes:VAT2)  0.19

  2009/07/27 * Invoice
    Assets:Bank:Checking                           $1,190.45
    Income:Clients:ACME_Inc

The automated posting for VAT1 will use the floored amount multiplied by
a factor, while the posting for VAT2 multiples the whole amount as
before.
2009-11-11 04:22:37 -05:00
John Wiegley
ac885a9075 All strings passed to Python are now Unicode objects 2009-11-10 18:44:08 -05:00
John Wiegley
39532bdf35 Automated transactions now use report query syntax
This returns their behavior back very close to what 2.x accepts.
2009-11-10 02:44:16 -05:00
John Wiegley
c3535d06c8 Redesigned the expr_t, predicate_t, query_t classes 2009-11-09 02:06:06 -05:00
John Wiegley
832e53f300 Column widths are always calculated now 2009-11-07 05:17:00 -05:00
John Wiegley
a05d39b722 Renamed --set-reported-account to just --account
This fits better with the --amount and --total options, which both
change the amount and total used for calculation.  Same with --account:
it happens after filtering, but before calculation so that balance
reports look as you'd expect.
2009-11-06 02:39:30 -05:00
John Wiegley
5e3f3d7f47 Report sought magnitude when balancing errors occur 2009-11-05 17:43:28 -05:00
John Wiegley
5e1886b147 Only --args-only is needed in LedgerHarness.py 2009-11-02 04:41:32 -05:00
John Wiegley
0a9cc833ad Added a regression test relating to forecasting 2009-11-02 01:59:43 -05:00
John Wiegley
4a249d6172 Fixed issues with period strings like "2009/10" 2009-11-02 01:59:24 -05:00
John Wiegley
90c7298049 Renamed the DocTests to ManualTests 2009-11-02 01:58:53 -05:00
John Wiegley
3a0879aff0 Added "reported posts" into account xdata
This is necessary because sometimes, a post from one account will get
reported as though it were in another account (this happens with
--budget, to show child account postings within their parent account).
In that case, the account needs to remember which postings have been
reported as being within it, so that it can add these amounts to its own
total in the balance report.
2009-11-02 01:40:07 -05:00
John Wiegley
4db60bb464 Added several new regression tests 2009-11-02 01:21:45 -05:00
John Wiegley
95e08cc46f Make the source directory available to all tests 2009-11-02 00:48:32 -05:00
John Wiegley
307b63be77 Fixed baseline tests relating to earlier changes 2009-11-02 00:32:34 -05:00
John Wiegley
46a419a5da Added DocTests to verify documentation examples 2009-11-01 21:18:09 -05:00
John Wiegley
55f5868380 Setting --date-format in ~/.ledgerrc works again 2009-10-29 00:52:51 -04:00
John Wiegley
d6d8ed6d99 Fixes to the Python unit tests 2009-10-28 23:09:35 -04:00
John Wiegley
9a07652fd8 Disabled some of the expression tests under Python 2009-10-28 22:50:33 -04:00
John Wiegley
47df7dd60e Rewrote the report query parser
It is now a full parser that parses report queries directly into value
expression trees.  These then get rendered into text so that other
options may extend the expression.
2009-10-28 18:40:31 -04:00
John Wiegley
65e8eca6cf The test harness needs to run without the pager 2009-10-28 02:30:51 -04:00
John Wiegley
16dbd019bc Colorization at the terminal now on by default 2009-10-28 02:13:54 -04:00
John Wiegley
18a1c8a3fb No more trailing spaces in the print report 2009-10-28 01:43:04 -04:00
John Wiegley
559566751d Sort by default unless --unsorted is selected 2009-10-28 01:17:10 -04:00
John Wiegley
ab433d28e0 Support a --now option, for testing purposes
This sets Ledger's notion of the "current time" to the given date.  This
makes it possible to have stable output from budgeting and forecasting
reports, for the sake of baseline tests.
2009-10-27 21:32:55 -04:00
John Wiegley
05529b2c68 Call times_initialize/shutdown in the unit tests 2009-10-25 05:40:26 -04:00
John Wiegley
fc84eeb358 Rewrote the way date and time I/O is managed 2009-10-25 05:01:47 -04:00
John Wiegley
f161aea8ce Removed reliance on strptime/strftime
The code now uses Boost's input and output facets for times and dates.
This ensures completely consistency regarding timezones and times, and
fixes the regression test that was broken while I was away coding in
London (where it was GMT-0 and I didn't notice the difference between
local and GMT).
2009-10-11 05:19:01 -04:00
John Wiegley
1a8e835bfe Disabled the --seed regression test
There is already a much more comprehensive test for "generate --seed".
2009-10-11 05:10:43 -04:00
John Wiegley
e8f315f00d Correctly align amounts formatted as "%12(amount)" 2009-06-28 15:53:46 +01:00
John Wiegley
6e582a8777 Added four missing baseline tests 2009-06-28 15:51:05 +01:00
John Wiegley
7b05595699 Improved usefulness of the "print --anon" output 2009-06-27 01:45:31 +01:00
John Wiegley
2ef1934bb0 Restored --price option, added baseline test
This option reports only in terms of the annotated price of the
commodities involved, otherwise it reports the amounts themselves.  It
can be used in conjunction with other reports, as it applies to the
displayed amounts, not the actual amounts being calculated.
2009-06-26 17:15:35 +01:00
John Wiegley
4574c30fcf The --download option is now fully restored 2009-06-26 16:52:41 +01:00
John Wiegley
127e5e7ad2 Added baseline test for --only 2009-06-21 20:33:30 +01:00
John Wiegley
8cb80185d5 Restored the --truncate option, added baseline test 2009-06-21 19:06:07 +01:00
John Wiegley
c1307445c1 Added baseline: --sort, --sort-all, --sort-xacts 2009-06-21 18:52:01 +01:00
John Wiegley
f83a1c8873 Restored --unround, added baseline test 2009-06-21 18:37:39 +01:00
John Wiegley
ba0dd89356 Added baseline: --subtotal, --total-data, --total 2009-06-21 18:08:55 +01:00
John Wiegley
521b935aa8 Restored --percent option, added baseline test 2009-06-21 18:07:27 +01:00
John Wiegley
add2ffd5f3 Added baseline tests for --lot-tags and --lots-actual 2009-06-19 20:52:24 +01:00
John Wiegley
189bbd1546 Added baseline test for --limit 2009-06-19 20:40:15 +01:00