hledger/tests/timeclock/timeclock.test
Simon Michael 5c09553481 lib: keep amounts aligned when rendering a transaction with posting flags
Related to #563, when rendering a transaction, we reserve two more chars
of width so that amounts remain aligned when there are posting flags.
Affects hledger-ui's transaction screen, print, hledger-rewrite etc.
2017-06-04 21:26:18 -07:00

113 lines
2.6 KiB
Plaintext

# 1. a timeclock session is parsed as a similarly-named transaction with one virtual posting
hledger -f - print
<<<
i 2009/1/1 08:00:00
o 2009/1/1 09:00:00 stuff on checkout record is ignored
i 2009/1/2 08:00:00 account name
o 2009/1/2 09:00:00
i 2009/1/3 08:00:00 some:account name and a description
o 2009/1/3 09:00:00
>>>
2009/01/01 * 08:00-09:00
() 1.00h
2009/01/02 * 08:00-09:00
(account name) 1.00h
2009/01/03 * and a description
(some:account name) 1.00h
>>>2
>>>= 0
## TODO
## 2. multi-day sessions get a new transaction for each day
#hledger -f- print
#<<<
#i 2017/04/20 09:00:00 A
#o 2017/04/20 17:00:00
#i 2017/04/21 09:00:00 B
#o 2017/04/21 17:00:00
#i 2017/04/22 09:00:00 C
#o 2017/04/22 17:00:00
#>>>
#>>>2
#>>>=
#
## 3. unclosed sessions are automatically closed at report time
## TODO this output looks wrong
#hledger -f- print
#<<<
#i 2017/04/20 09:00:00 A
#o 2017/04/20 17:00:00
#i 2017/04/21 09:00:00 B
#o 2017/04/21 17:00:00
#i 2017/04/22 09:00:00 C
#o 2017/04/22 17:00:00
#>>>
#2017/04/20 * 09:00-17:00
# (A) 8.00h
#
#2017/04/21 * 09:00-23:59
# (B) 15.00h
#
#2017/04/22 * 00:00-09:00
# (B) 9.00h
#
#2017/04/22 * 17:00-23:59
# () 7.00h
#
#2017/04/23 * 00:00-23:59
# () 24.00h
#
#2017/04/24 * 00:00-23:59
# () 24.00h
#
#2017/04/25 * 00:00-11:28
# () 11.47h
#
#>>>2
#>>>=
# 4.
# ledger timeclock example from #ledger
# ==== consulting.timeclock
# ; Time log for consulting sideline
# ; All times UTC
# i 2011/01/26 16:00:00 XXXX:Remote "IPMI Access"
# o 2011/01/26 16:15:00
# i 2011/01/26 17:45:00 XXXX:Onsite "Fix opty server"
# o 2011/01/26 20:00:00
# i 2011/01/27 18:00:00 XXXX:Remote "SSL certificate for www.YYYY.com"
# o 2011/01/27 18:15:00
# ; vim:ts=2 sw=2 sts=2 et ft=ledger fdm=manual:
# ==== consulting.dat
# ; Ledger for Consulting sideline
# !account Consulting
# !include consulting.timeclock
# !end
# 2010/02/27 (INV#2) XXXX Test Invoice
# Consulting:XXXX:Remote -0.5h @ $75.00
# Consulting:XXXX:Onsite -2.25h @ $100.00
# Receivable:Consulting:XXXX
# ; vim:ts=2 sw=2 sts=2 et ft=ledger fdm=manual:
# ==== command: ledger -f consulting.dat -s bal
# -2.25h Consulting:XXXX:Onsite
# 2.25h Consulting:XXXX:Onsite "Fix opty server"
# -30.0m Consulting:XXXX:Remote
# 15.0m Consulting:XXXX:Remote "IPMI Access"
# 15.0m Consulting:XXXX:Remote "SSL certificate for www.YYYY.com"
# $262.5 Receivable:Consulting:XXXX
# --------------------
# $262.5