diff options
| -rw-r--r-- | test/test_utils.py | 12 | ||||
| -rw-r--r-- | youtube_dl/utils.py | 8 | 
2 files changed, 14 insertions, 6 deletions
diff --git a/test/test_utils.py b/test/test_utils.py index 520d32ff5..a697232a8 100644 --- a/test/test_utils.py +++ b/test/test_utils.py @@ -50,6 +50,8 @@ from youtube_dl.utils import (      sanitize_path,      prepend_extension,      replace_extension, +    remove_start, +    remove_end,      remove_quotes,      shell_quote,      smuggle_url, @@ -215,6 +217,16 @@ class TestUtil(unittest.TestCase):          self.assertEqual(replace_extension('.abc', 'temp'), '.abc.temp')          self.assertEqual(replace_extension('.abc.ext', 'temp'), '.abc.temp') +    def test_remove_start(self): +        self.assertEqual(remove_start(None, 'A - '), None) +        self.assertEqual(remove_start('A - B', 'A - '), 'B') +        self.assertEqual(remove_start('B - A', 'A - '), 'B - A') + +    def test_remove_end(self): +        self.assertEqual(remove_end(None, ' - B'), None) +        self.assertEqual(remove_end('A - B', ' - B'), 'A') +        self.assertEqual(remove_end('B - A', ' - B'), 'B - A') +      def test_remove_quotes(self):          self.assertEqual(remove_quotes(None), None)          self.assertEqual(remove_quotes('"'), '"') diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py index ac60ba18c..5301d0740 100644 --- a/youtube_dl/utils.py +++ b/youtube_dl/utils.py @@ -1549,15 +1549,11 @@ def setproctitle(title):  def remove_start(s, start): -    if s.startswith(start): -        return s[len(start):] -    return s +    return s[len(start):] if s is not None and s.startswith(start) else s  def remove_end(s, end): -    if s.endswith(end): -        return s[:-len(end)] -    return s +    return s[:-len(end)] if s is not None and s.endswith(end) else s  def remove_quotes(s):  | 
