@@ -304,7 +304,7 @@ def __init__(
304304 self .data = data
305305 self .line = line
306306 self .old_cwd : str | None = None
307- self .tmpdir : tempfile . TemporaryDirectory [ str ] | None = None
307+ self .tmpdir : str | None = None
308308
309309 def runtest (self ) -> None :
310310 if self .skip :
@@ -323,19 +323,19 @@ def runtest(self) -> None:
323323 save_dir : str | None = self .config .getoption ("--save-failures-to" , None )
324324 if save_dir :
325325 assert self .tmpdir is not None
326- target_dir = os .path .join (save_dir , os .path .basename (self .tmpdir . name ))
326+ target_dir = os .path .join (save_dir , os .path .basename (self .tmpdir ))
327327 print (f"Copying data from test { self .name } to { target_dir } " )
328328 if not os .path .isabs (target_dir ):
329329 assert self .old_cwd
330330 target_dir = os .path .join (self .old_cwd , target_dir )
331- shutil .copytree (self .tmpdir . name , target_dir )
331+ shutil .copytree (self .tmpdir , target_dir )
332332 raise
333333
334334 def setup (self ) -> None :
335335 parse_test_case (case = self )
336336 self .old_cwd = os .getcwd ()
337- self .tmpdir = tempfile .TemporaryDirectory (prefix = "mypy-test-" )
338- os .chdir (self .tmpdir . name )
337+ self .tmpdir = tempfile .mkdtemp (prefix = "mypy-test-" )
338+ os .chdir (self .tmpdir )
339339 os .mkdir (test_temp_dir )
340340
341341 # Precalculate steps for find_steps()
@@ -371,10 +371,7 @@ def teardown(self) -> None:
371371 if self .old_cwd is not None :
372372 os .chdir (self .old_cwd )
373373 if self .tmpdir is not None :
374- try :
375- self .tmpdir .cleanup ()
376- except OSError :
377- pass
374+ shutil .rmtree (self .tmpdir , ignore_errors = True )
378375 self .old_cwd = None
379376 self .tmpdir = None
380377
0 commit comments