From 3a070b0ab70c4d4a456bdd12d0cd490ad127e320 Mon Sep 17 00:00:00 2001 From: jvoisin Date: Thu, 25 Oct 2018 11:56:46 +0200 Subject: Add support for zip files --- tests/test_corrupted_files.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'tests/test_corrupted_files.py') diff --git a/tests/test_corrupted_files.py b/tests/test_corrupted_files.py index 181d4d2..e7d3c2a 100644 --- a/tests/test_corrupted_files.py +++ b/tests/test_corrupted_files.py @@ -4,6 +4,7 @@ import unittest import shutil import os import logging +import zipfile from libmat2 import pdf, images, audio, office, parser_factory, torrent from libmat2 import harmless, video @@ -222,3 +223,17 @@ class TestCorruptedFiles(unittest.TestCase): p = video.AVIParser('./tests/data/--output.avi') self.assertFalse(p.remove_all()) os.remove('./tests/data/--output.avi') + + def test_zip(self): + with zipfile.ZipFile('./tests/data/dirty.zip', 'w') as zout: + zout.write('./tests/data/dirty.flac') + zout.write('./tests/data/dirty.docx') + zout.write('./tests/data/dirty.jpg') + zout.write('./tests/data/embedded_corrupted.docx') + p, mimetype = parser_factory.get_parser('./tests/data/dirty.zip') + self.assertEqual(mimetype, 'application/zip') + meta = p.get_meta() + self.assertEqual(meta['tests/data/dirty.flac']['comments'], 'Thank you for using MAT !') + self.assertEqual(meta['tests/data/dirty.docx']['word/media/image1.png']['Comment'], 'This is a comment, be careful!') + self.assertFalse(p.remove_all()) + os.remove('./tests/data/dirty.zip') -- cgit v1.3