From bd5335f31fe021d3c04b9f681f6023816d0c1ccc Mon Sep 17 00:00:00 2001 From: J0J0 T Date: Sun, 28 Aug 2022 13:19:33 +0200 Subject: [PATCH] convert: playlist: Separate unicode test for Windows --- test/rsrc/playlist_windows.m3u8 | 3 +++ test/test_m3ufile.py | 11 +++++++++++ 2 files changed, 14 insertions(+) create mode 100644 test/rsrc/playlist_windows.m3u8 diff --git a/test/rsrc/playlist_windows.m3u8 b/test/rsrc/playlist_windows.m3u8 new file mode 100644 index 000000000..97da8660a --- /dev/null +++ b/test/rsrc/playlist_windows.m3u8 @@ -0,0 +1,3 @@ +#EXTM3U +\\\\?\\/This/is/å/path/to_a_file.mp3 +\\\\?\\/This/is/another/path/tö_a_file.mp3 diff --git a/test/test_m3ufile.py b/test/test_m3ufile.py index 73dc57d54..4e13a9c1d 100644 --- a/test/test_m3ufile.py +++ b/test/test_m3ufile.py @@ -18,6 +18,7 @@ from os import path from tempfile import mkdtemp from shutil import rmtree import unittest +import sys from beets.util import bytestring_path from beets.util.m3u import M3UFile, EmptyPlaylistError @@ -69,6 +70,7 @@ class M3UFileTest(unittest.TestCase): self.assertEqual(m3ufile.media_list[0], '/This/is/a/path/to_a_file.mp3\n') + @unittest.skipIf(sys.platform == 'win32', 'win32') def test_playlist_load_unicode(self): """Test loading unicode paths from a playlist file.""" the_playlist_file = path.join(RSRC, b'playlist.m3u8') @@ -77,6 +79,15 @@ class M3UFileTest(unittest.TestCase): self.assertEqual(m3ufile.media_list[0], '/This/is/å/path/to_a_file.mp3\n') + @unittest.skipUnless(sys.platform == 'win32', 'win32') + def test_playlist_load_unicode_windows(self): + """Test loading unicode paths from a playlist file.""" + the_playlist_file = path.join(RSRC, b'playlist_windows.m3u8') + m3ufile = M3UFile(the_playlist_file) + m3ufile.load() + self.assertEqual(m3ufile.media_list[0], + '\\\\?\\/This/is/å/path/to_a_file.mp3\n') + def test_playlist_load_extm3u(self): """Test loading a playlist with an #EXTM3U header.""" the_playlist_file = path.join(RSRC, b'playlist.m3u')