diff options
Diffstat (limited to 'test/test_postprocessors.py')
-rw-r--r-- | test/test_postprocessors.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/test/test_postprocessors.py b/test/test_postprocessors.py index 1f8f375cc..bdc2d93cb 100644 --- a/test/test_postprocessors.py +++ b/test/test_postprocessors.py @@ -8,7 +8,10 @@ import sys import unittest sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) +from yt_dlp import YoutubeDL +from yt_dlp.compat import compat_shlex_quote from yt_dlp.postprocessor import ( + ExecAfterDownloadPP, FFmpegThumbnailsConvertorPP, MetadataFromFieldPP, MetadataFromTitlePP, @@ -55,3 +58,14 @@ class TestConvertThumbnail(unittest.TestCase): for _, out in tests: os.remove(file.format(out)) + + +class TestExecAfterDownload(unittest.TestCase): + def test_parse_cmd(self): + pp = ExecAfterDownloadPP(YoutubeDL(), '') + info = {'filepath': 'file name'} + quoted_filepath = compat_shlex_quote(info['filepath']) + + self.assertEqual(pp.parse_cmd('echo', info), 'echo %s' % quoted_filepath) + self.assertEqual(pp.parse_cmd('echo.{}', info), 'echo.%s' % quoted_filepath) + self.assertEqual(pp.parse_cmd('echo "%(filepath)s"', info), 'echo "%s"' % info['filepath']) |