mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2026-02-04 03:40:27 +01:00
57 lines
1.2 KiB
Python
Executable file
57 lines
1.2 KiB
Python
Executable file
#!/usr/bin/python
|
|
|
|
# Print the difference between two results.txt files from cairo tests
|
|
|
|
import sys
|
|
|
|
old_filename = sys.argv[1]
|
|
new_filename = sys.argv[2]
|
|
|
|
results = { }
|
|
|
|
f = open(old_filename, "r")
|
|
for line in f.readlines():
|
|
if 'RESULT:' not in line:
|
|
continue
|
|
|
|
items = line.split(" ")
|
|
testcase = dict(zip(items[0::2], items[1::2]))
|
|
|
|
try:
|
|
k = "%s.%s.%s" %(
|
|
testcase['TEST:'],
|
|
testcase['TARGET:'],
|
|
testcase.get('FORMAT:', ''))
|
|
results[k] = testcase['RESULT:']
|
|
except:
|
|
print line
|
|
raise
|
|
|
|
f = open(new_filename, "r")
|
|
for line in f.readlines():
|
|
if 'RESULT:' not in line:
|
|
# Not a results line. Skip
|
|
continue
|
|
|
|
items = line.split(" ")
|
|
testcase = dict(zip(items[0::2], items[1::2]))
|
|
try:
|
|
k = "%s.%s.%s" %(
|
|
testcase['TEST:'],
|
|
testcase['TARGET:'],
|
|
testcase.get('FORMAT:',''))
|
|
except:
|
|
print line
|
|
raise
|
|
|
|
if k not in results.keys():
|
|
# New test? Skip
|
|
continue
|
|
|
|
old_val = results[k].strip()
|
|
new_val = testcase['RESULT:'].strip()
|
|
if old_val == new_val:
|
|
# Test didn't change. Skip
|
|
continue
|
|
|
|
print("%s -> %s # %s" % (old_val, new_val, k))
|