summaryrefslogtreecommitdiff
path: root/test/regress
diff options
context:
space:
mode:
authorJohn Wiegley <jwiegley@gmail.com>2017-10-26 21:04:00 -0700
committerGitHub <noreply@github.com>2017-10-26 21:04:00 -0700
commita8a9c1a5284ddb3b497a6ade13901f04b3e33870 (patch)
treefae2e8b6e897b96759bf891f35750eea8c4b093c /test/regress
parentd1928e648368c1635c0ad2330d308b85f33a6494 (diff)
parentde1b48a013b6f4bdf68f7edf333db63a0994ef20 (diff)
downloadfork-ledger-a8a9c1a5284ddb3b497a6ade13901f04b3e33870.tar.gz
fork-ledger-a8a9c1a5284ddb3b497a6ade13901f04b3e33870.tar.bz2
fork-ledger-a8a9c1a5284ddb3b497a6ade13901f04b3e33870.zip
Merge pull request #494 from jjlee/fix-total
Fix bug where .total used in value exprs breaks totals
Diffstat (limited to 'test/regress')
-rw-r--r--test/regress/total-1.test28
-rw-r--r--test/regress/total-2.test30
2 files changed, 58 insertions, 0 deletions
diff --git a/test/regress/total-1.test b/test/regress/total-1.test
new file mode 100644
index 00000000..51448dd2
--- /dev/null
+++ b/test/regress/total-1.test
@@ -0,0 +1,28 @@
+; Test that calling total does not affect future calls to that function via a
+; stale cache entry for the totalled account, because of a change to that same
+; account
+
+2017-10-01 * Opening Balance
+ Assets:Current Account $1000.00
+ Equity:Opening Balances
+
+2017-10-02 * Savings
+ Assets:Savings $100.00
+ Assets:Current Account
+
+assert account("Assets:Current Account").total == $900.00
+
+2017-10-03 * Savings
+ Assets:Savings $100.00
+ Assets:Current Account
+
+assert account("Assets:Current Account").total == $800.00
+
+test bal
+ $1000.00 Assets
+ $800.00 Current Account
+ $200.00 Savings
+ $-1000.00 Equity:Opening Balances
+--------------------
+ 0
+end test
diff --git a/test/regress/total-2.test b/test/regress/total-2.test
new file mode 100644
index 00000000..2b15650f
--- /dev/null
+++ b/test/regress/total-2.test
@@ -0,0 +1,30 @@
+; Test that calling total does not affect future calls to that function via a
+; stale cache entry for the totalled account, because of a change to an
+; descendant (Assets:Current:Unallocated) of that account (Assets:Current)
+
+2017-10-01 * Opening entry
+ Assets:Current:Unallocated $2000.00
+ Equity:Opening Balances
+
+2017-10-02 * Initial savings
+ Assets:Current:Savings $1000.00
+ Assets:Current:Unallocated
+
+assert account("Assets:Current").total == $2000.00
+
+2017-10-03 * Balance
+ Assets:Current:Unallocated $1.00
+ Equity:Adjustments
+
+assert account("Assets:Current").total == $2001.00
+
+test bal
+ $2001.00 Assets:Current
+ $1000.00 Savings
+ $1001.00 Unallocated
+ $-2001.00 Equity
+ $-1.00 Adjustments
+ $-2000.00 Opening Balances
+--------------------
+ 0
+end test