Skip to content

Commit

Permalink
[test/test_download] Support 'playlist_maxcount:count' expected value
Browse files Browse the repository at this point in the history
* parallel to `playlist_mincount'
* specify both for a range of playlist lengths
* if max < min the test will always fail!
  • Loading branch information
dirkf committed Apr 22, 2024
1 parent eb38665 commit c2766cb
Showing 1 changed file with 13 additions and 1 deletion.
14 changes: 13 additions & 1 deletion test/test_download.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@

from test.helper import (
assertGreaterEqual,
assertLessEqual,
expect_warnings,
get_params,
gettestcases,
Expand Down Expand Up @@ -122,7 +123,10 @@ def print_skipping(reason):
params['outtmpl'] = tname + '_' + params['outtmpl']
if is_playlist and 'playlist' not in test_case:
params.setdefault('extract_flat', 'in_playlist')
params.setdefault('playlistend', test_case.get('playlist_mincount'))
params.setdefault('playlistend',
test_case['playlist_maxcount'] + 1
if test_case.get('playlist_maxcount')
else test_case.get('playlist_mincount'))
params.setdefault('skip_download', True)

ydl = YoutubeDL(params, auto_init=False)
Expand Down Expand Up @@ -190,6 +194,14 @@ def try_rm_tcs_files(tcs=None):
'Expected at least %d in playlist %s, but got only %d' % (
test_case['playlist_mincount'], test_case['url'],
len(res_dict['entries'])))
if 'playlist_maxcount' in test_case:
assertLessEqual(
self,
len(res_dict['entries']),
test_case['playlist_maxcount'],
'Expected at most %d in playlist %s, but got %d' % (
test_case['playlist_maxcount'], test_case['url'],
len(res_dict['entries'])))
if 'playlist_count' in test_case:
self.assertEqual(
len(res_dict['entries']),
Expand Down

0 comments on commit c2766cb

Please sign in to comment.