from app.api.v1.tv import _rewrite_hls_uri_attributes, _should_strip_hls_metadata_line def test_rewrite_hls_uri_attributes_rewrites_subtitle_manifest_url(): line = '#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="English",URI="index_3_0.m3u8"' rewritten = _rewrite_hls_uri_attributes( line, base_url="https://example.com/live/master.m3u8", ) assert 'URI="/api/v1/tv/proxy?url=https%3A%2F%2Fexample.com%2Flive%2Findex_3_0.m3u8"' in rewritten def test_rewrite_hls_uri_attributes_rewrites_absolute_uri(): line = '#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=1234,URI="https://cdn.example.com/live/iframe.m3u8"' rewritten = _rewrite_hls_uri_attributes( line, base_url="https://example.com/live/master.m3u8", ) assert 'URI="/api/v1/tv/proxy?url=https%3A%2F%2Fcdn.example.com%2Flive%2Fiframe.m3u8"' in rewritten def test_strip_hls_subtitle_media_metadata(): line = '#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="English",URI="index_3_0.m3u8"' assert _should_strip_hls_metadata_line(line) is True def test_keep_hls_audio_media_metadata(): line = '#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio",NAME="English",URI="audio.m3u8"' assert _should_strip_hls_metadata_line(line) is False