gnucash/libgnucash
Christopher Lam 918321aafa [test-extras] for tests: (env-create-multisplit-transaction)
This is the general case for any transaction creation.  Rewrite other
transaction creation routines to use it.  All tests still work
unchanged, which confirms this function works well.

This will allow tests to create multisplit transactions, of an
arbitrary number of splits. If the list-of-split's values are not
balanced (i.e. total 0), the engine will create an Imbalance-CUR
split.

The motivation is to allow creation of complex multisplit
multicommodity transactions eg USD50 + GBP20 (USD25) = EUR66 (USD75)
as well as their prices GBP/USD = 25/20 and EUR/USD = 75/66.

* USD -50
* USD -25 = GBP -20
* USD +75 = EUR +66

This will be useful in creating tests for stock-based reports, whereby
stock sales need splits in STOCK/ASSET/INCOME accounts.
2019-02-20 21:41:49 +08:00
..
app-utils [hooks.scm] deprecate hooks.scm 2019-02-20 21:09:22 +08:00
backend Make test-backend-dbi-basic build and run with libdbi 8. 2019-01-28 19:23:35 -05:00
core-utils Log a warning in gnc_get_locale() instead of writing to stderr. 2019-02-12 12:58:42 -08:00
doc Bug 796820 - References to 'Gnome Bugzilla' should be changed to 'GnuCash Bugzilla' 2018-09-28 15:00:43 +02:00
engine [test-extras] for tests: (env-create-multisplit-transaction) 2019-02-20 21:41:49 +08:00
gnc-module Lowercase cmake commands 2018-05-03 23:18:15 +02:00
quotes Revert the part of 923b01e2 which reverses currency quotes less than 1. 2019-01-28 19:25:34 -05:00
scm Bug 797106: Do a better job of converting decimal prices to rationals. 2019-02-17 11:58:15 +08:00
tax Updated to include codes for version 42, although new codes not implemented yet because data not reliably available 2019-01-17 18:19:26 -08:00
CMakeLists.txt Lowercase cmake commands 2018-05-03 23:18:15 +02:00