Mercurial > repos > blastem
view comparetests.py @ 220:cb72780e17b1
Add support for picking random numbers in a larger range in test generator. Add support for running a subset of tests in runner. Added testcases for bit and rotate instructions.
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 20 Apr 2013 15:14:47 -0700 |
parents | acd29e2664c6 |
children | f7ff02eeec2f |
line wrap: on
line source
#!/usr/bin/env python from glob import glob import subprocess from sys import exit,argv prefixes = [] for i in range(1, len(argv)): prefixes.append(argv[i]) for path in glob('generated_tests/*.bin'): if prefixes: good = False for prefix in prefixes: if path.startswith(prefix): good = True break if not good: continue try: b = subprocess.check_output(['./blastem', path, '-v']) try: m = subprocess.check_output(['musashi/mustrans', path]) #_,_,b = b.partition('\n') if b != m: print '-----------------------------' print 'Mismatch in ' + path print 'blastem output:' print b print 'musashi output:' print m print '-----------------------------' else: print path, 'passed' except subprocess.CalledProcessError as e: print '-----------------------------' print 'musashi exited with code', e.returncode, 'for test', path print 'blastem output:' print b print '-----------------------------' except subprocess.CalledProcessError as e: print '-----------------------------' print 'blastem exited with code', e.returncode, 'for test', path print '-----------------------------'