diff --git a/test/libcxx/test/executor.py b/test/libcxx/test/executor.py index 492f934a..f0356cec 100644 --- a/test/libcxx/test/executor.py +++ b/test/libcxx/test/executor.py @@ -17,7 +17,7 @@ class Executor(object): file_deps: [str]: Files required by the test env: {str: str}: Environment variables to execute under Returns: - out, err, exitCode + cmd, out, err, exitCode """ raise NotImplementedError @@ -34,7 +34,8 @@ class LocalExecutor(Executor): env_cmd += ['%s=%s' % (k, v) for k, v in env.items()] if work_dir == '.': work_dir = os.getcwd() - return executeCommand(env_cmd + cmd, cwd=work_dir) + out, err, rc = executeCommand(env_cmd + cmd, cwd=work_dir) + return (env_cmd + cmd, out, err, rc) class PrefixExecutor(Executor): @@ -129,6 +130,9 @@ class RemoteExecutor(Executor): srcs.extend(file_deps) dsts.extend(dev_paths) self.copy_in(srcs, dsts) + # TODO(jroelofs): capture the copy_in and delete_remote commands, + # and conjugate them with '&&'s around the first tuple element + # returned here: return self._execute_command_remote(cmd, target_cwd, env) finally: if target_cwd: diff --git a/test/libcxx/test/format.py b/test/libcxx/test/format.py index 57fe2330..5779bc71 100644 --- a/test/libcxx/test/format.py +++ b/test/libcxx/test/format.py @@ -125,8 +125,8 @@ class LibcxxTestFormat(object): # should add a `// FILE-DEP: foo.dat` to each test to track this. data_files = [os.path.join(local_cwd, f) for f in os.listdir(local_cwd) if f.endswith('.dat')] - out, err, rc = self.executor.run(exec_path, [exec_path], - local_cwd, data_files, env) + cmd, out, err, rc = self.executor.run(exec_path, [exec_path], + local_cwd, data_files, env) if rc != 0: report = libcxx.util.makeReport(cmd, out, err, rc) report = "Compiled With: %s\n%s" % (compile_cmd, report)