MCPcopy Create free account
hub / github.com/ddnet/ddnet / run_test

Method run_test

scripts/integration_test.py:116–146  ·  view source on GitHub ↗
(self, test)

Source from the content-addressed store, hash-verified

114 self.timeout_multiplier *= 20
115
116 def run_test(self, test):
117 tmp_dir = tempfile.mkdtemp(prefix=f"integration_{test.name}_", dir=self.test_dir)
118 tmp_dir_cleanup = not self.keep_tmpdirs
119 try:
120 env = TestEnvironment(self, test.name, tmp_dir, timeout=test.timeout)
121 try:
122 test(env)
123 except Exception as e: # noqa: BLE001 blind-except
124 env.kill_all()
125 error = "".join(traceback.format_exception(type(e), e, e.__traceback__))
126 error = error + env.format_valgrind_memcheck_errors()
127 error = error + env.format_stdout_stderr()
128 tmp_dir_cleanup = False
129 else:
130 env.kill_all()
131 error = None
132 if self.valgrind_memcheck:
133 error = env.format_valgrind_memcheck_errors()
134 if error:
135 error = error + env.format_stdout_stderr()
136 tmp_dir_cleanup = False
137 else:
138 error = None
139 finally:
140 if tmp_dir_cleanup:
141 shutil.rmtree(tmp_dir)
142 tmp_dir = None
143 elif error:
144 with open(os.path.join(tmp_dir, "test_failure.log"), "w", encoding="utf-8") as test_failure_file:
145 test_failure_file.write(error)
146 return relpath(tmp_dir) if tmp_dir is not None else None, error
147
148 def run_tests(self, tests):
149 tests = list(tests)

Callers 1

run_testsMethod · 0.95

Calls 6

kill_allMethod · 0.95
format_stdout_stderrMethod · 0.95
TestEnvironmentClass · 0.85
testFunction · 0.85
relpathFunction · 0.85

Tested by

no test coverage detected