From 19a8fd97aa44e2f42a933f43cc9852d6303d7ca6 Mon Sep 17 00:00:00 2001 From: jvoisin Date: Sun, 25 Mar 2018 16:17:41 +0200 Subject: Implement mp3 and ogg support --- tests/data/dirty.mp3 | Bin 0 -> 33646 bytes tests/data/dirty.ogg | Bin 0 -> 23298 bytes tests/test_libmat2.py | 44 ++++++++++++++++++++++++++++++++++++++++++-- 3 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 tests/data/dirty.mp3 create mode 100644 tests/data/dirty.ogg (limited to 'tests') diff --git a/tests/data/dirty.mp3 b/tests/data/dirty.mp3 new file mode 100644 index 0000000..7b6de6a Binary files /dev/null and b/tests/data/dirty.mp3 differ diff --git a/tests/data/dirty.ogg b/tests/data/dirty.ogg new file mode 100644 index 0000000..b938099 Binary files /dev/null and b/tests/data/dirty.ogg differ diff --git a/tests/test_libmat2.py b/tests/test_libmat2.py index 1d31695..50a9a97 100644 --- a/tests/test_libmat2.py +++ b/tests/test_libmat2.py @@ -5,7 +5,7 @@ import shutil import os from src import parsers -from src.parsers import pdf, png, jpg +from src.parsers import pdf, png, jpg, audio class TestGetMeta(unittest.TestCase): def test_pdf(self): @@ -25,6 +25,17 @@ class TestGetMeta(unittest.TestCase): meta = p.get_meta() self.assertEqual(meta['Comment'], 'Created with GIMP') + def test_mp3(self): + p = audio.MP3Parser('./tests/data/dirty.mp3') + meta = p.get_meta() + self.assertEqual(meta['TXXX:I am a '], ['various comment']) + + def test_ogg(self): + p = audio.OGGParser('./tests/data/dirty.ogg') + meta = p.get_meta() + self.assertEqual(meta['TITLE'], ['I am so']) + + class TestCleaning(unittest.TestCase): def test_pdf(self): shutil.copy('./tests/data/dirty.pdf', './tests/data/clean.pdf') @@ -57,7 +68,6 @@ class TestCleaning(unittest.TestCase): os.remove('./tests/data/clean.png') - def test_jpg(self): shutil.copy('./tests/data/dirty.jpg', './tests/data/clean.jpg') p = jpg.JPGParser('./tests/data/clean.jpg') @@ -72,3 +82,33 @@ class TestCleaning(unittest.TestCase): self.assertEqual(p.get_meta(), {}) os.remove('./tests/data/clean.jpg') + + def test_mp3(self): + shutil.copy('./tests/data/dirty.mp3', './tests/data/clean.mp3') + p = audio.MP3Parser('./tests/data/clean.mp3') + + meta = p.get_meta() + self.assertEqual(meta['TXXX:I am a '], ['various comment']) + + ret = p.remove_all() + self.assertTrue(ret) + + p = audio.MP3Parser('./tests/data/clean.mp3.cleaned') + self.assertEqual(p.get_meta(), {}) + + os.remove('./tests/data/clean.mp3') + + def test_ogg(self): + shutil.copy('./tests/data/dirty.ogg', './tests/data/clean.ogg') + p = audio.OGGParser('./tests/data/clean.ogg') + + meta = p.get_meta() + self.assertEqual(meta['TITLE'], ['I am so']) + + ret = p.remove_all() + self.assertTrue(ret) + + p = audio.OGGParser('./tests/data/clean.ogg.cleaned') + self.assertEqual(p.get_meta(), {}) + + os.remove('./tests/data/clean.ogg') -- cgit v1.3