return f'{test}.out'
- def do_run_test(self, test: str, mp: bool) -> TestResult:
+ def do_run_test(self, test: str) -> TestResult:
"""
Run one test
:param test: test file path
- :param mp: if true, we are in a multiprocessing environment, use
- personal subdirectories for test run
Note: this method may be called from subprocess, so it does not
change ``self`` object in any way!
args = [str(f_test.resolve())]
env = self.env.prepare_subprocess(args)
- if mp:
- # Split test directories, so that tests running in parallel don't
- # break each other.
- for d in ['TEST_DIR', 'SOCK_DIR']:
- env[d] = os.path.join(env[d], f_test.name)
- Path(env[d]).mkdir(parents=True, exist_ok=True)
+
+ # Split test directories, so that tests running in parallel don't
+ # break each other.
+ for d in ['TEST_DIR', 'SOCK_DIR']:
+ env[d] = os.path.join(
+ env[d],
+ f"{self.env.imgfmt}-{self.env.imgproto}-{f_test.name}")
+ Path(env[d]).mkdir(parents=True, exist_ok=True)
test_dir = env['TEST_DIR']
f_bad = Path(test_dir, f_test.name + '.out.bad')
testname = os.path.basename(test)
print(f'# running {self.env.imgfmt} {testname}')
- res = self.do_run_test(test, mp)
+ res = self.do_run_test(test)
end = datetime.datetime.now().strftime('%H:%M:%S')
self.test_print_one_line(test=test,