diff --git a/test/test_utils.py b/test/test_utils.py index 102420fcb..88b3196d4 100644 --- a/test/test_utils.py +++ b/test/test_utils.py @@ -102,6 +102,7 @@ from youtube_dl.utils import ( urljoin, urlencode_postdata, urshift, + parse_m3u8_attributes, update_url_query, variadic, version_tuple, @@ -1567,6 +1568,17 @@ Line 1 self.assertEqual(rot47('youtube-dl'), r'J@FEF36\5=') self.assertEqual(rot47('YOUTUBE-DL'), r'*~&%&qt\s{') + def test_parse_m3u7_attributes(self): + self.assertEqual(parse_m3u8_attributes("1=2"), {'1': '2'}) + self.assertEqual(parse_m3u8_attributes("A=B"), {'A': 'B'}) + self.assertEqual(parse_m3u8_attributes("1A=2"), {'1A': '2'}) + self.assertEqual(parse_m3u8_attributes("1=2B"), {'1': '2B'}) + self.assertEqual(parse_m3u8_attributes("1=2,3=4"), {'1':'2', '3':'4'}) + self.assertEqual(parse_m3u8_attributes("1=\"2\""), {'1':'2'}) + self.assertEqual(parse_m3u8_attributes("1a=2"), {}) + self.assertEqual(parse_m3u8_attributes("1=2b"), {'1':'2b'}) + self.assertEqual(parse_m3u8_attributes(""), {}) + def test_urshift(self): self.assertEqual(urshift(3, 1), 1) self.assertEqual(urshift(-3, 1), 2147483646)