1#! /usr/bin/env python3 2 3import json 4import os 5from pathlib import Path 6 7path1Traces = Path("C:/src/angle/src/tests/restricted_traces") 8path2Traces = Path("C:/src/angle2/src/tests/restricted_traces") 9 10 11def main(): 12 print("Trace Name, original GLES version, new GLES version, Required Extensions") 13 for f in path2Traces.iterdir(): 14 if not f.is_dir(): 15 continue 16 trace1 = path1Traces / f.name 17 trace2 = path2Traces / f.name 18 19 traceJSON1 = trace1 / f"{f.name}.json" 20 traceJSON2 = trace2 / f"{f.name}.json" 21 22 contents1 = readJSON(traceJSON1) 23 contents2 = readJSON(traceJSON2) 24 25 gles1 = (contents1["TraceMetadata"]["ContextClientMajorVersion"], 26 contents1["TraceMetadata"]["ContextClientMinorVersion"]) 27 gles2 = (contents2["TraceMetadata"]["ContextClientMajorVersion"], 28 contents2["TraceMetadata"]["ContextClientMinorVersion"]) 29 30 if "RequiredExtensions" in contents1: 31 requiredExts = contents1["RequiredExtensions"] 32 print(f"\"{f.name}\", \"{gles2}\", \"{gles1}\", \"{requiredExts}\"") 33 else: 34 print(f"\"{f.name}\", \"{gles2}\", \"{gles1}\", \"TRACE NOT RE-EVALUATED\"") 35 36 37def readJSON(path): 38 with open(path, 'r') as f: 39 return json.load(f) 40 41 42if __name__ == "__main__": 43 main() 44