mirror of
https://github.com/fergalmoran/picard.git
synced 2025-12-26 19:29:01 +00:00
Make _compile_move_additional_files_pattern() a static method and simplify tests
- do not pass config but the patterns string - make it a static method (it doesn't need self anyway) - simplify tests accordingly
This commit is contained in:
@@ -362,62 +362,43 @@ class FileGuessTracknumberAndTitleTest(PicardTestCase):
|
||||
class FileAdditionalFilesPatternsTest(PicardTestCase):
|
||||
|
||||
def test_empty_patterns(self):
|
||||
self.set_config_values({
|
||||
'move_additional_files_pattern': ' ',
|
||||
})
|
||||
f = File('/somepath/01 somefile.mp3')
|
||||
self.assertEqual(f._compile_move_additional_files_pattern(config), set())
|
||||
self.assertEqual(File._compile_move_additional_files_pattern(' '), set())
|
||||
|
||||
def test_simple_patterns(self):
|
||||
self.set_config_values({
|
||||
'move_additional_files_pattern': 'cover.jpg',
|
||||
})
|
||||
f = File('/somepath/01 somefile.mp3')
|
||||
pattern = 'cover.jpg'
|
||||
expected = {
|
||||
(re.compile('(?s:cover\\.jpg)\\Z', re.IGNORECASE), False)
|
||||
}
|
||||
self.assertEqual(f._compile_move_additional_files_pattern(config), expected)
|
||||
self.assertEqual(File._compile_move_additional_files_pattern(pattern), expected)
|
||||
|
||||
def test_whitespaces_patterns(self):
|
||||
self.set_config_values({
|
||||
'move_additional_files_pattern': " a \n b ",
|
||||
})
|
||||
f = File('/somepath/01 somefile.mp3')
|
||||
pattern = " a \n b "
|
||||
expected = {
|
||||
(re.compile('(?s:a)\\Z', re.IGNORECASE), False),
|
||||
(re.compile('(?s:b)\\Z', re.IGNORECASE), False),
|
||||
}
|
||||
self.assertEqual(f._compile_move_additional_files_pattern(config), expected)
|
||||
self.assertEqual(File._compile_move_additional_files_pattern(pattern), expected)
|
||||
|
||||
def test_duplicated_patterns(self):
|
||||
self.set_config_values({
|
||||
'move_additional_files_pattern': 'cover.jpg cover.jpg',
|
||||
})
|
||||
f = File('/somepath/01 somefile.mp3')
|
||||
pattern = 'cover.jpg cover.jpg COVER.JPG'
|
||||
expected = {
|
||||
(re.compile('(?s:cover\\.jpg)\\Z', re.IGNORECASE), False)
|
||||
}
|
||||
self.assertEqual(f._compile_move_additional_files_pattern(config), expected)
|
||||
self.assertEqual(File._compile_move_additional_files_pattern(pattern), expected)
|
||||
|
||||
def test_simple_hidden_patterns(self):
|
||||
self.set_config_values({
|
||||
'move_additional_files_pattern': 'cover.jpg .hidden',
|
||||
})
|
||||
f = File('/somepath/01 somefile.mp3')
|
||||
pattern = 'cover.jpg .hidden'
|
||||
expected = {
|
||||
(re.compile('(?s:cover\\.jpg)\\Z', re.IGNORECASE), False),
|
||||
(re.compile('(?s:\\.hidden)\\Z', re.IGNORECASE), True)
|
||||
}
|
||||
self.assertEqual(f._compile_move_additional_files_pattern(config), expected)
|
||||
self.assertEqual(File._compile_move_additional_files_pattern(pattern), expected)
|
||||
|
||||
def test_wildcard_patterns(self):
|
||||
self.set_config_values({
|
||||
'move_additional_files_pattern': 'c?ver.jpg .h?dden* *.jpg *.JPG',
|
||||
})
|
||||
f = File('/somepath/01 somefile.mp3')
|
||||
pattern = 'c?ver.jpg .h?dden* *.jpg *.JPG'
|
||||
expected = {
|
||||
(re.compile('(?s:c.ver\\.jpg)\\Z', re.IGNORECASE), False),
|
||||
(re.compile('(?s:\\.h.dden.*)\\Z', re.IGNORECASE), True),
|
||||
(re.compile('(?s:.*\\.jpg)\\Z', re.IGNORECASE), False),
|
||||
}
|
||||
self.assertEqual(f._compile_move_additional_files_pattern(config), expected)
|
||||
self.assertEqual(File._compile_move_additional_files_pattern(pattern), expected)
|
||||
|
||||
Reference in New Issue
Block a user