diff options
Diffstat (limited to 'tests/runtests.py')
-rwxr-xr-x | tests/runtests.py | 184 |
1 files changed, 0 insertions, 184 deletions
diff --git a/tests/runtests.py b/tests/runtests.py deleted file mode 100755 index 7649f775..00000000 --- a/tests/runtests.py +++ /dev/null @@ -1,184 +0,0 @@ -#!/usr/bin/env python - -import random -import string -import signal -import os -import sys -import time - -true, false = 1, 0 - -options = [ - "--account=TempAccount", - "--actual", - "--add-budget", - "--amount-data", - "--amount=a", - "--ansi", - "--ansi-invert", - "--average", - #"--balance-format", - "--basis", - "--begin=2004/01", - "--budget", - "--by-payee", - #"--cache=/tmp/cache", - "--cleared", - "--collapse", - "--comm-as-payee", - #"--csv-register-format", - "--current", - "--date-format=%Y", - "--descend='$100'", - "--descend-if='t=={$100}'", - "--deviation", - "--display='a>10'", - "--dow", - "--download", - "--effective", - "--empty", - "--end=2005/01", - #"--equity-format", - #"--file=/tmp/file", - "--forecast='d<[2006]'", - "--format=%Y", - #"--full-help", - "--gain", - "--head=10", - #"--help", - #"--help-calc", - #"--help-comm", - #"--help-disp", - #"--init-file=/tmp/init", - #"--input-date-format", - "--limit='a>10'", - "--lots", - "--lot-prices", - "--lot-dates", - "--lot-tags", - "--market", - "--monthly", - "--no-cache", - #"--output=/tmp/output", - #"--pager", - #"--percentage", - "--performance", - "--period-sort=A\\(t\\)", - "--period=oct", - #"--plot-amount-format", - #"--plot-total-format", - "--price", - "--price-exp=1000", - #"--price-db=/tmp/foo", - #"--prices-format", - #"--print-format", - "--quantity", - "--real", - #"--reconcile", - #"--reconcile-date", - #"--register-format", - "--related", - "--sort=A\\(t\\)", - "--subtotal", - "--tail=5", - "--total-data", - "--total=O", - "--totals", - "--unbudgeted", - "--uncleared", - #"--version", - "--weekly", - "--wide", - #"--wide-register-format", - #"--write-hdr-format", - #"--write-xact-format", - "--yearly", -] - -commands = [ - "bal rent", - "bal ira", - "bal auto", - "reg rent", - "reg ira", - "reg expenses:food", - "print rent", - "print irc", - "xml rent", - "xml irc", - "equity rent", - "equity ira", - "prices AAPL", -] - -random.seed () - -loop = true -count = 0 -errors = 0 -if len(sys.argv) > 1: - errors = int(sys.argv[1]) -signals = 0 - -while loop: - try: - n = random.randint (0, len (options)) - opts = random.sample (options, n) - for cmd in commands: - if os.path.exists ("/tmp/out"): - os.unlink ("/tmp/out") - - cmd = "./ledger -f utils/standard.dat " + string.join(opts, " ") + " " + cmd + \ - " >> /tmp/out 2>&1" - - sys.stdout = open ("/tmp/out", "w") - print "::", cmd - sys.stdout.close () - - ret = os.system (cmd) - - sys.stdout = open ("/tmp/out", "a") - - # Convert an odd UNIX return type into the appropriate - # signal indication. - if ret and ret % 256 == 0 and ret / 256 > 127: - ret = 0x100 + (ret / 256 - 128) - - if ret and ret % 256 == 0: - print "ERROR: Return value", ret / 256 - sys.stdout.close () - os.system ("cat /tmp/out >> errors.out") - errors += 1 - elif ret: - if ret % 256 == signal.SIGINT: - loop = false - break - print "SIGNAL: Return value", ret % 256 - sys.stdout.close () - os.system ("cat /tmp/out >> signals.out") - signals += 1 - else: - sys.stdout.close () - os.system ("cat /tmp/out >> results.out") - - sys.stdout = sys.__stdout__ - count += 1 - if count < 10 or \ - (count < 100 and count % 10 == 0) or \ - (count < 1000 and count % 100 == 0) or \ - count % 1000 == 0: - if signals > 0 and errors > 0: - print "%d tests ... (%d signals, %d errors)" % \ - (count, signals, errors) - elif signals > 0: - print "%d tests ... (%d signals)" % \ - (count, signals) - elif errors > 0: - print "%d tests ... (%d errors)" % \ - (count, errors) - else: - print "%d tests ..." % count - - except KeyboardInterrupt: - loop = false |