diff --git a/tests/test_libmat2.py b/tests/test_libmat2.py index 751b4357f2becb651ef338cd63809cfb745682cf..1d2a22a755e5d005b28cf05e6b926abacaac2b13 100644 --- a/tests/test_libmat2.py +++ b/tests/test_libmat2.py @@ -5,6 +5,7 @@ import shutil import os import re import tarfile +import tempfile import zipfile from libmat2 import pdf, images, audio, office, parser_factory, torrent, harmless @@ -733,6 +734,21 @@ class TestCleaning(unittest.TestCase): self.assertEqual(p.get_meta(), {}) self.assertTrue(p.remove_all()) + tmp_dir = tempfile.mkdtemp() + with tarfile.open('./tests/data/dirty.cleaned.tar') as zout: + zout.extractall(path=tmp_dir) + zout.close() + + number_of_files = 0 + for root, _, fnames in os.walk(tmp_dir): + for f in fnames: + complete_path = os.path.join(root, f) + p, _ = parser_factory.get_parser(complete_path) + self.assertIsNotNone(p) + self.assertEqual(p.get_meta(), {}) + number_of_files += 1 + self.assertEqual(number_of_files, 3) + os.remove('./tests/data/dirty.tar') os.remove('./tests/data/dirty.cleaned.tar') os.remove('./tests/data/dirty.cleaned.cleaned.tar')