114 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			114 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| ##############################################################################
 | |
| # data validation
 | |
| #
 | |
| # 1. should prompt again for a bad date
 | |
| hledgerdev -f $$-add.j add; rm -f $$-add.j
 | |
| <<<
 | |
| 2009/1/32
 | |
| >>> /A valid hledger smart date is required/
 | |
| >>>=0
 | |
| 
 | |
| # 2. should accept a blank date
 | |
| hledgerdev -f $$-add.j add; rm -f $$-add.j
 | |
| <<<
 | |
| 
 | |
| >>> /Date .*Description:/
 | |
| >>>=0
 | |
| 
 | |
| ##############################################################################
 | |
| # precision and commodity handling
 | |
| #
 | |
| # 3. simple add with no existing journal, no commodity entered
 | |
| hledgerdev -f $$-add.j add; rm -f $$-add.j
 | |
| <<<
 | |
| 
 | |
| 
 | |
| a
 | |
| 1000.0
 | |
| b
 | |
| 
 | |
| .
 | |
| >>> /Date.*Description.*Account 1.*Amount  1.*Account 2.*Amount  2.*Account 3.*or \. or enter to finish.*/
 | |
| >>>=0
 | |
| 
 | |
| # 4. default commodity with greater precision
 | |
|  printf 'D $1000.00\n' >t$$.j; hledgerdev -f t$$.j add >/dev/null; cat t$$.j; rm -f t$$.j
 | |
| <<<
 | |
| 
 | |
| 
 | |
| a
 | |
| $1000.0
 | |
| b
 | |
| 
 | |
| .
 | |
| 
 | |
| >>> /a  +\$1000\.0/
 | |
| >>>=0
 | |
| 
 | |
| # 5. default commodity with less precision
 | |
|  printf 'D $1000.0\n' >t$$.j; hledgerdev -f t$$.j add >/dev/null; cat t$$.j; rm -f t$$.j
 | |
| <<<
 | |
| 
 | |
| 
 | |
| a
 | |
| $1000.00
 | |
| b
 | |
| 
 | |
| .
 | |
| 
 | |
| >>> /a  +\$1000\.00/
 | |
| >>>=0
 | |
| 
 | |
| # 6. existing commodity with greater precision
 | |
|  printf '2010/1/1\n a  $1000.00\n b\n' >t$$.j; hledgerdev -f t$$.j add >/dev/null; cat t$$.j; rm -f t$$.j
 | |
| <<<
 | |
| 
 | |
| 
 | |
| a
 | |
| $1000.0
 | |
| b
 | |
| 
 | |
| .
 | |
| >>> /a  +\$1000\.0/
 | |
| >>>=0
 | |
| 
 | |
| # 7. existing commodity with less precision
 | |
|  printf '2010/1/1\n a  $1000.0\n b\n' >t$$.j; hledgerdev -f t$$.j add >/dev/null; cat t$$.j; rm -f t$$.j
 | |
| <<<
 | |
| 
 | |
| 
 | |
| a
 | |
| $1000.00
 | |
| b
 | |
| 
 | |
| .
 | |
| 
 | |
| >>> /a  +\$1000\.00/
 | |
| >>>=0
 | |
| 
 | |
| # 8. default amounts should not fail to balance due to precision
 | |
| rm -f nosuch.journal; hledgerdev -f nosuch.journal add; rm -f nosuch.journal
 | |
| <<<
 | |
| 2010/1/1
 | |
| x
 | |
| a
 | |
| 0.25
 | |
| b
 | |
| 0.5
 | |
| c
 | |
| >>> /Amount  3 \[-0.75\]:/
 | |
| >>>=0
 | |
| 
 | |
| ## 9. shouldn't add decimals if there aren't any
 | |
| ## printf '\n\na\n1\nb\n' | hledgerdev -f /dev/null add
 | |
| # hledgerdev -f /dev/null add
 | |
| # <<<
 | |
| 
 | |
| 
 | |
| # a
 | |
| # 1
 | |
| # b
 | |
| # >>> /amount  2 \[-1\]/
 | |
| # >>>=0
 | |
| 
 |