diff options
Diffstat (limited to 'tests/test_recursiveloader.py')
-rw-r--r-- | tests/test_recursiveloader.py | 67 |
1 files changed, 23 insertions, 44 deletions
diff --git a/tests/test_recursiveloader.py b/tests/test_recursiveloader.py index 26c7259..d891f1f 100644 --- a/tests/test_recursiveloader.py +++ b/tests/test_recursiveloader.py @@ -12,7 +12,27 @@ import unittest import gemato.recursiveloader -class BasicNestingTest(unittest.TestCase): +class TempDirTestCase(unittest.TestCase): + DIRS = [] + FILES = {} + + def setUp(self): + self.dir = tempfile.mkdtemp() + for k in self.DIRS: + os.mkdir(os.path.join(self.dir, k)) + for k, v in self.FILES.items(): + with io.open(os.path.join(self.dir, k), 'w', encoding='utf8') as f: + f.write(v) + + def tearDown(self): + for k in self.FILES: + os.unlink(os.path.join(self.dir, k)) + for k in reversed(self.DIRS): + os.rmdir(os.path.join(self.dir, k)) + os.rmdir(self.dir) + + +class BasicNestingTest(TempDirTestCase): DIRS = ['sub', 'sub/deeper', 'other'] FILES = { 'Manifest': u''' @@ -34,21 +54,6 @@ DATA test 0 MD5 d41d8cd98f00b204e9800998ecf8427e 'other/Manifest': u'', } - def setUp(self): - self.dir = tempfile.mkdtemp() - for k in self.DIRS: - os.mkdir(os.path.join(self.dir, k)) - for k, v in self.FILES.items(): - with io.open(os.path.join(self.dir, k), 'w', encoding='utf8') as f: - f.write(v) - - def tearDown(self): - for k in self.FILES: - os.unlink(os.path.join(self.dir, k)) - for k in reversed(self.DIRS): - os.rmdir(os.path.join(self.dir, k)) - os.rmdir(self.dir) - def test_init(self): m = gemato.recursiveloader.ManifestRecursiveLoader( os.path.join(self.dir, 'Manifest')) @@ -215,7 +220,7 @@ DATA test 0 MD5 d41d8cd98f00b204e9800998ecf8427e self.assertDictEqual(m.get_file_entry_dict('nonexist'), {}) -class MultipleManifestTest(unittest.TestCase): +class MultipleManifestTest(TempDirTestCase): DIRS = ['sub'] FILES = { 'Manifest': u''' @@ -228,21 +233,6 @@ TIMESTAMP 2017-01-01T01:01:01Z ''', } - def setUp(self): - self.dir = tempfile.mkdtemp() - for k in self.DIRS: - os.mkdir(os.path.join(self.dir, k)) - for k, v in self.FILES.items(): - with io.open(os.path.join(self.dir, k), 'w', encoding='utf8') as f: - f.write(v) - - def tearDown(self): - for k in self.FILES: - os.unlink(os.path.join(self.dir, k)) - for k in reversed(self.DIRS): - os.rmdir(os.path.join(self.dir, k)) - os.rmdir(self.dir) - def test_load_sub_manifest(self): m = gemato.recursiveloader.ManifestRecursiveLoader( os.path.join(self.dir, 'Manifest')) @@ -269,7 +259,7 @@ TIMESTAMP 2017-01-01T01:01:01Z self.assertIsNone(m.find_timestamp()) -class MultipleTopLevelManifestTest(unittest.TestCase): +class MultipleTopLevelManifestTest(TempDirTestCase): FILES = { 'Manifest': u''' MANIFEST Manifest.a 0 MD5 d41d8cd98f00b204e9800998ecf8427e @@ -281,17 +271,6 @@ TIMESTAMP 2017-01-01T01:01:01Z ''', } - def setUp(self): - self.dir = tempfile.mkdtemp() - for k, v in self.FILES.items(): - with io.open(os.path.join(self.dir, k), 'w', encoding='utf8') as f: - f.write(v) - - def tearDown(self): - for k in self.FILES: - os.unlink(os.path.join(self.dir, k)) - os.rmdir(self.dir) - def test_load_extra_manifests(self): m = gemato.recursiveloader.ManifestRecursiveLoader( os.path.join(self.dir, 'Manifest')) |