From 4e0060a3cef4f7fd703b08445941937f6e90acb9 Mon Sep 17 00:00:00 2001 From: Shane Frischkorn Date: Mon, 9 Sep 2013 17:16:24 +1000 Subject: [PATCH] Ignore case when comparing file extensions --- libfilemanager.py | 4 ++-- tests/libfilemanagertest.py | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/libfilemanager.py b/libfilemanager.py index ea051f0..c5607c0 100644 --- a/libfilemanager.py +++ b/libfilemanager.py @@ -125,7 +125,7 @@ class FileManager: for rootdir, dirnames, filenames in os.walk(outputdir): for fle in filenames: filename = os.path.join(rootdir, fle) - if os.path.splitext(fle)[1] in [".avi", ".mpg", ".mpeg", + if os.path.splitext(fle)[1].lower() in [".avi", ".mpg", ".mpeg", "mp4", ".mkv"]: if self.checkduplicates(filename): duplicates.append(filename) @@ -147,7 +147,7 @@ class FileManager: for _, _, filenames in os.walk(dirname): for show in filenames: extension = os.path.splitext(show)[1] - if (extension in [".avi", ".mpg", ".mpeg", "mp4", ".mkv"] and + if (extension.lower() in [".avi", ".mpg", ".mpeg", "mp4", ".mkv"] and show[:6] == fileseasonepisode and fileextension != extension): return True diff --git a/tests/libfilemanagertest.py b/tests/libfilemanagertest.py index 0ebc2b8..c8b8f9b 100644 --- a/tests/libfilemanagertest.py +++ b/tests/libfilemanagertest.py @@ -70,6 +70,17 @@ class libfilemanagertest(unittest.TestCase): self.assertTrue(result) minimock.restore() + def test_checkduplicatethomas(self): + settings = Mock('libsettings.Settings') + filemanager = FileManager(settings) + + os.walk = thomaswalk + + result = filemanager.checkduplicates("/path/to/S12E05 - Henry Gets It Wrong - SD TV.mkv") + + self.assertTrue(result) + minimock.restore() + def test_checkduplicatenomatch(self): settings = Mock('libsettings.Settings') filemanager = FileManager(settings) @@ -97,6 +108,9 @@ class libfilemanagertest(unittest.TestCase): def dummywalk(arg): return [("/path/to/", [], ["S03E14 - Test - SD TV.avi"])] +def thomaswalk(arg): + return [(("/path/to/", [], ["S12E05 - Henry Gets It Wrong - Unknown.AVI"]))] + if __name__ == '__main__': suite = unittest.TestLoader().loadTestsFromTestCase(libfilemanagertest) unittest.TextTestRunner(verbosity=2).run(suite)