- Hunt down adjacent punctuations with altering char. - Add some tests dedicated to parsing amounts.
113 lines
1.3 KiB
Plaintext
113 lines
1.3 KiB
Plaintext
# Simple case
|
|
hledger bal -f - --no-total
|
|
<<<
|
|
2017/1/1
|
|
a 1,000.00 EUR
|
|
b -1,000.00 EUR
|
|
>>>
|
|
1,000.00 EUR a
|
|
-1,000.00 EUR b
|
|
>>>2
|
|
>>>=0
|
|
|
|
# No digits before decimal sep
|
|
hledger bal -f - --no-total
|
|
<<<
|
|
2017/1/1
|
|
a .01 EUR
|
|
b
|
|
>>>
|
|
0.01 EUR a
|
|
-0.01 EUR b
|
|
>>>2
|
|
>>>=0
|
|
|
|
# No digits after decimal sep
|
|
hledger bal -f - --no-total
|
|
<<<
|
|
2017/1/1
|
|
a 1. EUR
|
|
b
|
|
>>>
|
|
1 EUR a
|
|
-1 EUR b
|
|
>>>2
|
|
>>>=0
|
|
|
|
# No digits at all
|
|
hledger bal -f -
|
|
<<<
|
|
2017/1/1
|
|
a . EUR
|
|
b
|
|
>>>
|
|
>>>=1
|
|
|
|
# Omitted decimals
|
|
hledger bal -f -
|
|
<<<
|
|
2017/1/1
|
|
a 1,000 EUR
|
|
b -1,000.00 EUR
|
|
>>>
|
|
>>>=1
|
|
|
|
# Big prices
|
|
hledger bal -f - --no-total
|
|
<<<
|
|
2017/1/1
|
|
a -1 BTC @ 24,840 UAH
|
|
b 24,840.00 UAH
|
|
>>>
|
|
>>>=1
|
|
|
|
# adjacent punctuation chars
|
|
hledger bal -f -
|
|
<<<
|
|
2017/1/1
|
|
a 1,,0,,0.0 EUR
|
|
b -1..0..0,0 EUR
|
|
>>>
|
|
>>>=1
|
|
|
|
# adjacent punctuation chars of different types
|
|
hledger bal -f -
|
|
<<<
|
|
2017/1/1
|
|
a 1,0,.0 EUR
|
|
b -1.0.,0 EUR
|
|
>>>
|
|
>>>=1
|
|
|
|
# separator chars vary
|
|
hledger bal -f -
|
|
<<<
|
|
2017/1/1
|
|
a 1.0,0.0,0 EUR
|
|
b -1,0.0,0.0 EUR
|
|
>>>
|
|
>>>=1
|
|
|
|
# number begins with a decimal char
|
|
hledger bal -f -
|
|
<<<
|
|
2017/1/1
|
|
a .1 EUR
|
|
b -.1 EUR
|
|
>>>
|
|
0.1 EUR a
|
|
-0.1 EUR b
|
|
--------------------
|
|
0
|
|
>>>2
|
|
>>>=0
|
|
|
|
# number begins with a separator char
|
|
hledger bal -f -
|
|
<<<
|
|
2017/1/1
|
|
a ,100.0 EUR
|
|
b -,100.0 EUR
|
|
>>>
|
|
>>>=1
|