blob: ea39e94b62e4f159b28548e480b219a3c7d0c3d3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#!/usr/bin/python
# This script confirms what ledger tells you.
import sys
import os
import re
def clean(num):
return float(re.sub("(\s+|\$|,)","",num))
running_total = 0.0
index = 1
last_line = ""
for line in os.popen("../ledger %s reg %s" % (sys.argv[1], sys.argv[2])):
value = clean(line[55:67])
total = clean(line[68:80])
running_total += value
if abs(running_total - total) > 0.001:
print "! discrepancy of %.2f (%.2f - %.2f) at line %d:" % \
(running_total - total, running_total, total, index)
print line,
running_total = total
index += 1
last_line = line
balance_total = 0.0
for line in os.popen("../ledger %s bal %s" % (sys.argv[1], sys.argv[2])):
balance_total = clean(line[:20])
if abs(balance_total - running_total) > 0.001:
print
print "! discrepancy of %.2f (%.2f - %.2f) between register and balance" % \
(balance_total - running_total, balance_total, running_total)
print last_line,
print line,
|