1
0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2025-08-14 16:38:29 +00:00

test for replay

This commit is contained in:
coletdjnz 2025-08-09 18:46:35 +12:00
parent a9b1c25ddc
commit a37f1de764
No known key found for this signature in database
GPG Key ID: 91984263BB39894A

View File

@ -1373,6 +1373,29 @@ def test_media_header_segment(self, base_args):
received_data_length=0, received_data_length=0,
) )
def test_media_header_replay(self, base_args):
# Should be able to replay a media header (e.g. request was retried)
selector = make_selector('audio')
processor = SabrProcessor(
**base_args,
audio_selection=selector,
)
fim = make_format_im(selector)
processor.process_format_initialization_metadata(fim)
media_header = make_media_header(selector, sequence_no=1)
result = processor.process_media_header(media_header)
assert isinstance(result, ProcessMediaHeaderResult)
assert isinstance(result.sabr_part, MediaSegmentInitSabrPart)
segment = processor.partial_segments[media_header.header_id]
processor.partial_segments.clear()
result = processor.process_media_header(media_header)
assert isinstance(result, ProcessMediaHeaderResult)
assert isinstance(result.sabr_part, MediaSegmentInitSabrPart)
assert segment == processor.partial_segments[media_header.header_id]
assert segment is not processor.partial_segments[media_header.header_id]
def test_media_header_with_startms(self, base_args): def test_media_header_with_startms(self, base_args):
# start_ms is provided instead of time_range in media header # start_ms is provided instead of time_range in media header
selector = make_selector('audio') selector = make_selector('audio')