diff options
author | Michael Pavone <pavone@retrodev.com> | 2015-07-26 16:51:03 -0700 |
---|---|---|
committer | Michael Pavone <pavone@retrodev.com> | 2015-07-26 16:51:03 -0700 |
commit | 38c7278727cb3dd65d9e5dc98e69dd306b12c476 (patch) | |
tree | 616c527669fcab6828bcb71949e3ccd3f054c75d /zcompare.py | |
parent | 2c702a302754c4eb4a4c2aeabd9e533b0efd2bde (diff) | |
parent | 6cd1ab5ac4004b9e9433c5d16a6ed7fa049cf767 (diff) |
Merge
Diffstat (limited to 'zcompare.py')
-rwxr-xr-x | zcompare.py | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/zcompare.py b/zcompare.py new file mode 100755 index 0000000..d6eacea --- /dev/null +++ b/zcompare.py @@ -0,0 +1,58 @@ +#!/usr/bin/env python +from glob import glob +import subprocess +from sys import exit,argv + +prefixes = [] +skip = set() +for i in range(1, len(argv)): + if '.' in argv[i]: + f = open(argv[i]) + for line in f: + parts = line.split() + for part in parts: + if part.endswith('.bin'): + skip.add(part) + f.close() + print 'Skipping',len(skip),'entries from previous report.' + else: + prefixes.append(argv[i]) + +for path in glob('ztests/*/*.bin'): + if path in skip: + continue + if prefixes: + good = False + fname = path.split('/')[-1] + for prefix in prefixes: + if fname.startswith(prefix): + good = True + break + if not good: + continue + try: + b = subprocess.check_output(['./ztestrun', path]) + try: + m = subprocess.check_output(['gxz80/gxzrun', path]) + #_,_,b = b.partition('\n') + if b != m: + print '-----------------------------' + print 'Mismatch in ' + path + print 'blastem output:' + print b + print 'gxz80 output:' + print m + print '-----------------------------' + else: + print path, 'passed' + except subprocess.CalledProcessError as e: + print '-----------------------------' + print 'gxz80 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 '-----------------------------' + |