X-Git-Url: https://git.cworth.org/git?p=apitrace-tests;a=blobdiff_plain;f=tool_driver.py;h=60ad5d9903052a4ae5b137a8360e223db2e8006b;hp=962db1e09b32baf3cfa106e4bfd96e2b85acff62;hb=c41cfb0f8cca8818f0a512d58f4c43820321e622;hpb=13e2c906a5e6ece1cf9ba1ed23551b570d7180fd diff --git a/tool_driver.py b/tool_driver.py index 962db1e..60ad5d9 100755 --- a/tool_driver.py +++ b/tool_driver.py @@ -58,7 +58,7 @@ class AsciiComparer: try: refLine = refLines[lineNo] except IndexError: - fail('unexpected junk: %r' % self.srcLines[lineNo]) + fail('unexpected junk: %r' % srcLines[lineNo]) try: srcLine = srcLines[lineNo] @@ -77,10 +77,20 @@ class ToolDriver(Driver): some reason.''' refStream = open(refScript, 'rt') - - args = refStream.readline().split() - cmd = [self.options.apitrace] + args cwd = os.path.dirname(os.path.abspath(refScript)) + + while True: + args = refStream.readline().split() + cmd = [self.options.apitrace] + args + + if args[0] == 'dump': + break + + p = popen(cmd, cwd=cwd, universal_newlines=True) + p.wait() + if p.returncode != 0: + fail('`apitrace %s` returned code %i' % (args[0], p.returncode)) + p = popen(cmd, cwd=cwd, stdout=subprocess.PIPE, universal_newlines=True) comparer = AsciiComparer(p.stdout, refStream, self.options.verbose) @@ -88,7 +98,7 @@ class ToolDriver(Driver): p.wait() if p.returncode != 0: - fail('tool returned code %i' % p.returncode) + fail('`apitrace %s` returned code %i' % (args[0], p.returncode)) def run(self): self.parseOptions()