Tests: ensure temporary directories and files are removed after tests

- QSettings object needs special care, as file was re-created on exit
- Append a cleanup function as soon as possible to ensure temporary dirs & files are removed in any case
- prefer addCleanup() over tearDown(), keeping creation and cleanup together
This commit is contained in:
Laurent Monin
2020-02-08 16:19:30 +01:00
parent b7281c5147
commit b7389a6445
8 changed files with 74 additions and 72 deletions

View File

@@ -22,14 +22,12 @@ class TestFileSystem(PicardTestCase):
def setUp(self):
super().setUp()
self.src_directory = mkdtemp()
self.src_directory = mkdtemp(suffix=self.__class__.__name__)
self.addCleanup(shutil.rmtree, self.src_directory)
self.tgt_directory = mkdtemp()
self.addCleanup(shutil.rmtree, self.tgt_directory)
config.setting = settings.copy()
def tearDown(self):
shutil.rmtree(self.src_directory)
shutil.rmtree(self.tgt_directory)
def _prepare_files(self, src_rel_path='', tgt_rel_path=''):
"""Prepare src files and tgt filenames for a test."""
with suppress(FileExistsError):