hledger/tests/incomestatement/incomestatement.test
Simon Michael 6c60e4a97b bs/cf/is: always show a tabular report, even with no report interval
Previously, if you specified no report interval, the text output of
these commands was a simple report like the original balance command,
with amounts on the left and account names on the right. Also,
balances used arithmetic sign like the balance command.
Now it always draws a table, with account names in the left
column, and shows balances with normal-positive sign, consistent with
the multicolumn reports. Less code, fewer bugs.
2018-01-23 11:05:01 -08:00

293 lines
16 KiB
Plaintext

# 1. Simple statement works
hledger -f - incomestatement
<<<
2016/1/1
income 1
b
>>>
Income Statement 2016/01/01
|| 2016/01/01
==========++============
Revenues ||
----------++------------
income || -1
----------++------------
|| -1
==========++============
Expenses ||
----------++------------
----------++------------
||
==========++============
Net: || -1
>>>2
>>>= 0
# 2. Period reporting works for a specific year
hledger -f - incomestatement -b 2016 -e 2017
<<<
2015/10/10 Client A | Invoice #1
assets:receivables $10,000.00
revenue:clients:A -$10,000.00
2015/11/02 Deposit | Invoice #1
assets:checking $10,000.00
assets:receivables -$10,000.00
2016/02/01 Client B | Invoice #2
assets:receivables $10.00
revenue:clients:B -$10.00
2016/02/15 ACME | Hosting Costs
expense:hosting $50.00
assets:checking -$50.00
2016/03/01 Deposit | Invoice #2
assets:checking $10.00
assets:receivables -$10.00
>>>
Income Statement 2016
|| 2016
===================++=========
Revenues ||
-------------------++---------
revenue:clients:B || $10.00
-------------------++---------
|| $10.00
===================++=========
Expenses ||
-------------------++---------
expense:hosting || $50.00
-------------------++---------
|| $50.00
===================++=========
Net: || $-40.00
>>>2
>>>= 0
# 3. Period reporting works for two years
hledger -f - incomestatement -b 2015 -e 2017
<<<
2015/10/10 Client A | Invoice #1
assets:receivables $10,000.00
revenue:clients:A -$10,000.00
2015/11/02 Deposit | Invoice #1
assets:checking $10,000.00
assets:receivables -$10,000.00
2016/02/01 Client B | Invoice #2
assets:receivables $10.00
revenue:clients:B -$10.00
2016/02/15 ACME | Hosting Costs
expense:hosting $50.00
assets:checking -$50.00
2016/03/01 Deposit | Invoice #2
assets:checking $10.00
assets:receivables -$10.00
>>>
Income Statement 2015/01/01-2016/12/31
|| 2015/01/01-2016/12/31
===================++=======================
Revenues ||
-------------------++-----------------------
revenue:clients:A || $10,000.00
revenue:clients:B || $10.00
-------------------++-----------------------
|| $10,010.00
===================++=======================
Expenses ||
-------------------++-----------------------
expense:hosting || $50.00
-------------------++-----------------------
|| $50.00
===================++=======================
Net: || $9,960.00
>>>2
>>>= 0
# 4. Period reporting works for one month
hledger -f - incomestatement -b 2015/10 -e 2015/11
<<<
2015/10/10 Client A | Invoice #1
assets:receivables $10,000.00
revenue:clients:A -$10,000.00
2015/11/02 Deposit | Invoice #1
assets:checking $10,000.00
assets:receivables -$10,000.00
2016/02/01 Client B | Invoice #2
assets:receivables $10.00
revenue:clients:B -$10.00
2016/02/15 ACME | Hosting Costs
expense:hosting $50.00
assets:checking -$50.00
2016/03/01 Deposit | Invoice #2
assets:checking $10.00
assets:receivables -$10.00
>>>
Income Statement 2015/10
|| 2015/10
===================++============
Revenues ||
-------------------++------------
revenue:clients:A || $10,000.00
-------------------++------------
|| $10,000.00
===================++============
Expenses ||
-------------------++------------
-------------------++------------
||
===================++============
Net: || $10,000.00
>>>2
>>>= 0
# 5. Period reporting works for one month in another year
hledger -f - incomestatement -b 2016/10 -e 2016/11
<<<
2015/10/10 Client A | Invoice #1
assets:receivables $10,000.00
revenue:clients:A -$10,000.00
2015/11/02 Deposit | Invoice #1
assets:checking $10,000.00
assets:receivables -$10,000.00
2016/02/01 Client B | Invoice #2
assets:receivables $10.00
revenue:clients:B -$10.00
2016/02/15 ACME | Hosting Costs
expense:hosting $50.00
assets:checking -$50.00
2016/03/01 Deposit | Invoice #2
assets:checking $10.00
assets:receivables -$10.00
>>>
Income Statement 2016/10
|| 2016/10
==========++=========
Revenues ||
----------++---------
----------++---------
|| 0
==========++=========
Expenses ||
----------++---------
----------++---------
|| 0
==========++=========
Net: || 0
>>>2
>>>= 0
# 6. Multicolumn test
# old (arithmetic sign):
# Income Statement
#
# || 2008/01 2008/02 2008/03 2008/04 2008/05 2008/06 2008/07 2008/08 2008/09 2008/10 2008/11 2008/12 Total Average
# ===================++==============================================================================================================================
# Revenues ||
# -------------------++------------------------------------------------------------------------------------------------------------------------------
# income:gifts || 0 0 0 0 0 $-1 0 0 0 0 0 0 $-1 0
# income:salary || $-1 0 0 0 0 0 0 0 0 0 0 0 $-1 0
# -------------------++------------------------------------------------------------------------------------------------------------------------------
# || $-1 0 0 0 0 $-1 0 0 0 0 0 0 $-2 0
# ===================++==============================================================================================================================
# Expenses ||
# -------------------++------------------------------------------------------------------------------------------------------------------------------
# expenses:food || 0 0 0 0 0 $1 0 0 0 0 0 0 $1 0
# expenses:supplies || 0 0 0 0 0 $1 0 0 0 0 0 0 $1 0
# -------------------++------------------------------------------------------------------------------------------------------------------------------
# || 0 0 0 0 0 $2 0 0 0 0 0 0 $2 0
# ===================++==============================================================================================================================
# Total || $-1 0 0 0 0 $1 0 0 0 0 0 0 0 0
#
hledger -f sample.journal incomestatement -p 'monthly in 2008' -AT
>>>
Income Statement 2008
|| 2008/01 2008/02 2008/03 2008/04 2008/05 2008/06 2008/07 2008/08 2008/09 2008/10 2008/11 2008/12 Total Average
===================++==============================================================================================================================
Revenues ||
-------------------++------------------------------------------------------------------------------------------------------------------------------
income:gifts || 0 0 0 0 0 $1 0 0 0 0 0 0 $1 0
income:salary || $1 0 0 0 0 0 0 0 0 0 0 0 $1 0
-------------------++------------------------------------------------------------------------------------------------------------------------------
|| $1 0 0 0 0 $1 0 0 0 0 0 0 $2 0
===================++==============================================================================================================================
Expenses ||
-------------------++------------------------------------------------------------------------------------------------------------------------------
expenses:food || 0 0 0 0 0 $1 0 0 0 0 0 0 $1 0
expenses:supplies || 0 0 0 0 0 $1 0 0 0 0 0 0 $1 0
-------------------++------------------------------------------------------------------------------------------------------------------------------
|| 0 0 0 0 0 $2 0 0 0 0 0 0 $2 0
===================++==============================================================================================================================
Net: || $1 0 0 0 0 $-1 0 0 0 0 0 0 0 0
>>>= 0
# 7. Multicolumn test (historical)
# old (arithmetic sign):
# Income Statement (Historical Ending Balances)
#
# || 2008/01/31 2008/02/29 2008/03/31 2008/04/30 2008/05/31 2008/06/30 2008/07/31 2008/08/31 2008/09/30 2008/10/31 2008/11/30 2008/12/31
# ===================++================================================================================================================================================
# Revenues ||
# -------------------++------------------------------------------------------------------------------------------------------------------------------------------------
# income:gifts || 0 0 0 0 0 $-1 $-1 $-1 $-1 $-1 $-1 $-1
# income:salary || $-1 $-1 $-1 $-1 $-1 $-1 $-1 $-1 $-1 $-1 $-1 $-1
# -------------------++------------------------------------------------------------------------------------------------------------------------------------------------
# || $-1 $-1 $-1 $-1 $-1 $-2 $-2 $-2 $-2 $-2 $-2 $-2
# ===================++================================================================================================================================================
# Expenses ||
# -------------------++------------------------------------------------------------------------------------------------------------------------------------------------
# expenses:food || 0 0 0 0 0 $1 $1 $1 $1 $1 $1 $1
# expenses:supplies || 0 0 0 0 0 $1 $1 $1 $1 $1 $1 $1
# -------------------++------------------------------------------------------------------------------------------------------------------------------------------------
# || 0 0 0 0 0 $2 $2 $2 $2 $2 $2 $2
# ===================++================================================================================================================================================
# Total || $-1 $-1 $-1 $-1 $-1 0 0 0 0 0 0 0
#
hledger -f sample.journal incomestatement -p 'monthly in 2008' --historical
>>>
Income Statement 2008 (Historical Ending Balances)
|| 2008/01/31 2008/02/29 2008/03/31 2008/04/30 2008/05/31 2008/06/30 2008/07/31 2008/08/31 2008/09/30 2008/10/31 2008/11/30 2008/12/31
===================++================================================================================================================================================
Revenues ||
-------------------++------------------------------------------------------------------------------------------------------------------------------------------------
income:gifts || 0 0 0 0 0 $1 $1 $1 $1 $1 $1 $1
income:salary || $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1
-------------------++------------------------------------------------------------------------------------------------------------------------------------------------
|| $1 $1 $1 $1 $1 $2 $2 $2 $2 $2 $2 $2
===================++================================================================================================================================================
Expenses ||
-------------------++------------------------------------------------------------------------------------------------------------------------------------------------
expenses:food || 0 0 0 0 0 $1 $1 $1 $1 $1 $1 $1
expenses:supplies || 0 0 0 0 0 $1 $1 $1 $1 $1 $1 $1
-------------------++------------------------------------------------------------------------------------------------------------------------------------------------
|| 0 0 0 0 0 $2 $2 $2 $2 $2 $2 $2
===================++================================================================================================================================================
Net: || $1 $1 $1 $1 $1 0 0 0 0 0 0 0
>>>= 0