Use teardown_method

This commit is contained in:
Andrew Murray 2025-07-24 07:27:39 +10:00
parent a39d14648b
commit f4d86e4f44

View File

@ -276,11 +276,10 @@ class TestEmbeddable:
except Exception: except Exception:
pytest.skip("Compiler could not be initialized") pytest.skip("Compiler could not be initialized")
try: with open("embed_pil.c", "w", encoding="utf-8") as fh:
with open("embed_pil.c", "w", encoding="utf-8") as fh: home = sys.prefix.replace("\\", "\\\\")
home = sys.prefix.replace("\\", "\\\\") fh.write(
fh.write( f"""
f"""
#include "Python.h" #include "Python.h"
int main(int argc, char* argv[]) int main(int argc, char* argv[])
@ -302,19 +301,20 @@ int main(int argc, char* argv[])
return 0; return 0;
}} }}
""" """
) )
objects = compiler.compile(["embed_pil.c"]) objects = compiler.compile(["embed_pil.c"])
compiler.link_executable(objects, "embed_pil") compiler.link_executable(objects, "embed_pil")
env = os.environ.copy() env = os.environ.copy()
env["PATH"] = sys.prefix + ";" + env["PATH"] env["PATH"] = sys.prefix + ";" + env["PATH"]
# Do not display the Windows Error Reporting dialog # Do not display the Windows Error Reporting dialog
getattr(ctypes, "windll").kernel32.SetErrorMode(0x0002) getattr(ctypes, "windll").kernel32.SetErrorMode(0x0002)
process = subprocess.Popen(["embed_pil.exe"], env=env) process = subprocess.Popen(["embed_pil.exe"], env=env)
process.communicate() process.communicate()
assert process.returncode == 0 assert process.returncode == 0
finally:
os.remove("embed_pil.c") def teardown_method(self) -> None:
os.remove("embed_pil.c")