def test_removes_directories(self): directories = [ tempfile.mkdtemp(), tempfile.mkdtemp(), tempfile.mkdtemp(), tempfile.mkdtemp(), "THIS PATH DOES NOT EXIST" ] system = System() system._remove_directories(directories) for directory in directories: # This is here because the default behavior for the # underlying remove_directory() function is to ignore # ENOENT if directory == "THIS PATH DOES NOT EXIST": continue if not isdir(directory): continue # Maybe the directory was not removed? If not # then we should expect it to be in atexit for function, args, keywords in atexit._exithandlers: if directory in args: break else: self.fail("Directory %s not removed" % directory)
def test_remove_directories_exception(self): system = System() for entry in ("", 1, None, 1.0): with self.assertRaises(AssertionError): system._remove_directories(entry)