10 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	- Human-powered tests for hledger-ui
- hledger-ui -f sample.journal # shows all accounts in list mode
- t # switches to tree mode
- 1 # clips accounts to depth 1
- RIGHT # expected failure: shows lots of periods instead of an empty register
- ESC # reset UI state to initial screen in list mode
- RIGHT # shows assets🏦checking register, 2008-12-31 transaction selected
- RIGHT # shows transaction detail
- ? # shows help dialog over current screen; all content fits unclipped in 80x25, including the last q quit line
- q # q with help dialog open closes it
- q # q elsewhere exits the app, restoring the terminal to its previous state
- hledger-ui -f sample.journal –register checking date:200812 # date query at startup
- hledger-ui -f sample.journal –register checking date:200812 –change # total is now $-1
- hledger-ui -f bcexample.hledger –tree –register assets # wide content is elided as shown
- hledger-ui -f forecast.journal –register a # future and forecasted txns are hidden by default
- hledger-ui -f forecast.journal –register a –forecast # future txn is shown, and sets the start of default forecast period
- hledger-ui -f forecast.journal –register a –forecast=2020 # explicit forecast period shows forecasted txns also
- press F at least three times # future & forecasted txns are toggled every time (#1411)
- hledger-ui -f forecast.journal –register a –forecast=2020 –watch, press F once
- touch forecast.journal, press F again # forecast txns can still be enabled if file modification time changed while disabled (#1204)
 
Human-powered tests for hledger-ui
When you want to check that hledger-ui is working correctly, try some or all of these things. Additions welcome. Expected output, at least the first few lines of it, as copied from an 80x25 terminal, is shown below each step.
Another source of tests is the tutorial at https://hledger.org/ui.html, which has nice screenshots, but might be less up to date.
hledger-ui -f sample.journal # shows all accounts in list mode
───────────────────── sample.journal account balances (1/8) ──────────────────── assets🏦checking 0 assets🏦saving $1 assets:cash $-2 expenses:food $1 expenses:supplies $1 income:gifts $-1 income:salary $-1 liabilities:debts $1
t # switches to tree mode
──────────────────── sample.journal account balances (3/13) ──────────────────── assets $-1 bank $1 checking 0 saving $1 cash $-2 expenses $2 food $1 supplies $1 income $-2 gifts $-1 salary $-1 liabilities $1 debts $1
1 # clips accounts to depth 1
─────────────── sample.journal account balances to depth 1 (1/4) ─────────────── assets $-1 expenses $2 income $-2 liabilities $1
RIGHT # expected failure: shows lots of periods instead of an empty register
────────────────────────── assets transactions (100/0) ───────────────────────── .. .. .. .. .. .. .. ..
ESC # reset UI state to initial screen in list mode
───────────────────── sample.journal account balances (1/8) ──────────────────── assets🏦checking 0 assets🏦saving $1 assets:cash $-2 expenses:food $1 expenses:supplies $1 income:gifts $-1 income:salary $-1 liabilities:debts $1
RIGHT # shows assets🏦checking register, 2008-12-31 transaction selected
──────────────────── assets🏦checking transactions (4/4) ─────────────────── 2008-01-01 income in:salary $1 $1 2008-06-01 gift in:gifts $1 $2 2008-06-02 save as:ba:saving $-1 $1 2008-12-31 * pay off li:debts $-1 0
RIGHT # shows transaction detail
──────────────── Transaction #5 (4 of 4 in assets🏦checking) ─────────────── 2008-12-31 * pay off liabilities:debts $1 assets🏦checking $-1
? # shows help dialog over current screen; all content fits unclipped in 80x25, including the last q quit line
┌──────────────────────Help (LEFT/ESC/?/q to close help)──────────────────────┐─ │ Navigation Filtering │ │ UP/DOWN/PUP/PDN/HOME/END/k/j/C-p/C-n / set a filter query │ │ move selection up/down F show future & periodic txns │ │ RIGHT/l/C-f show txns, or txn detail R show real/all postings │ │ LEFT/h/C-b go back Z show nonzero/all amounts │ │ ESC cancel, or reset app state U/P/C show unmarked/pending/cleared │ │ S-DOWN /S-UP shrink/grow period │ │ Accounts screen S-RIGHT/S-LEFT next/previous period │ │ 1234567890-+ set/adjust depth limit T set period to today │ │ t toggle accounts tree/list mode DEL reset filters │ │ H toggle historical balance/change │ │ Other │ │ Register screen a add transaction (hledger add) │ │ t toggle subaccount txns A add transaction (hledger-iadd) │ │ (and accounts tree/list mode) B show amounts/costs │ │ H toggle historical/period total E open editor │ │ I toggle balance assertions │ │ Help V show amounts/market values │ │ ? toggle this help g reload data │ │ p/m/i while help is open: C-l redraw & recenter │ │ show manual in pager/man/info C-z suspend │ │ q quit │ └─────────────────────────────────────────────────────────────────────────────┘ ──── ?:help t:list/tree -+:depth H:end-bals/changes F:forecast a:add q:quit ────
q # q with help dialog open closes it
──────────────── Transaction #5 (4 of 4 in assets🏦checking) ─────────────── 2008-12-31 * pay off liabilities:debts $1 assets🏦checking $-1
q # q elsewhere exits the app, restoring the terminal to its previous state
~/src/hledger/hledger-ui/test$ hledger-ui -f sample.journal ~/src/hledger/hledger-ui/test$
hledger-ui -f sample.journal –register checking date:200812 # date query at startup
──── assets🏦checking transactions matching date:200812 in 2008-12 (1/1) ─── 2008-12-31 * pay off li:debts $-1 0
hledger-ui -f sample.journal –register checking date:200812 –change # total is now $-1
──── assets🏦checking transactions matching date:200812 in 2008-12 (1/1) ─── 2008-12-31 * pay off li:debts $-1 $-1
hledger-ui -f bcexample.hledger –tree –register assets # wide content is elided as shown
──────────────────────── Assets transactions (518/518) ──────────────────────── 2014-07-26 * .. .. 16.00 GLD, -1515.83 USD ..0 GLD, 17.00 ITOT, 6 more.. 2014-07-31 * .. .. 2550.60 USD, 4.62 VACHR ..0 GLD, 17.00 ITOT, 6 more.. 2014-08-03 * .. .. -2400.00 USD ..0 GLD, 17.00 ITOT, 6 more.. 2014-08-04 * .. .. -4.00 USD ..0 GLD, 17.00 ITOT, 6 more.. 2014-08-08 * .. .. -65.00 USD ..0 GLD, 17.00 ITOT, 6 more.. 2014-08-09 * .. .. -560.82 USD ..0 GLD, 17.00 ITOT, 6 more.. 2014-08-14 * .. .. 2550.60 USD, 4.62 VACHR ..0 GLD, 17.00 ITOT, 6 more.. 2014-08-15 * .. .. -16.00 GLD, 1481.29 USD ..0 GLD, 17.00 ITOT, 6 more..
hledger-ui -f forecast.journal –register a # future and forecasted txns are hidden by default
───────────────────────── a transactions (1/1) ───────────────────────── 2020-01-01 past transaction a $1 $1
hledger-ui -f forecast.journal –register a –forecast # future txn is shown, and sets the start of default forecast period
───────────────────────── a transactions (1/2) ───────────────────────── 2020-01-01 past transaction a $1 $1 3000-01-01 future transac.. a $1000000 $1000001
hledger-ui -f forecast.journal –register a –forecast=2020 # explicit forecast period shows forecasted txns also
───────────────────────── a transactions (6/6) ───────────────────────── 2020-01-01 past transaction a $1 $1 2020-01-01 forecasted tra.. a $1 $2 2020-04-01 forecasted tra.. a $1 $3 2020-07-01 forecasted tra.. a $1 $4 2020-10-01 forecasted tra.. a $1 $5 3000-01-01 future transac.. a $1000000 $1000005
press F at least three times # future & forecasted txns are toggled every time (#1411)
hledger-ui -f forecast.journal –register a –forecast=2020 –watch, press F once
───────────────────────── a transactions (1/1) ───────────────────────── 2020-01-01 past transaction a $1 $1
touch forecast.journal, press F again # forecast txns can still be enabled if file modification time changed while disabled (#1204)
───────────────────────── a transactions (6/6) ───────────────────────── 2020-01-01 past transaction a $1 $1 2020-01-01 forecasted tra.. a $1 $2 2020-04-01 forecasted tra.. a $1 $3 2020-07-01 forecasted tra.. a $1 $4 2020-10-01 forecasted tra.. a $1 $5 3000-01-01 future transac.. a $1000000 $1000005