mirror of
https://github.com/home-assistant/core.git
synced 2025-07-19 03:07:37 +00:00
Split long strings in stream hls tests (#135271)
This commit is contained in:
parent
aa741a9207
commit
8386eaa92b
@ -119,13 +119,16 @@ def make_playlist(
|
|||||||
response.extend(
|
response.extend(
|
||||||
[
|
[
|
||||||
f"#EXT-X-PART-INF:PART-TARGET={part_target_duration:.3f}",
|
f"#EXT-X-PART-INF:PART-TARGET={part_target_duration:.3f}",
|
||||||
f"#EXT-X-SERVER-CONTROL:CAN-BLOCK-RELOAD=YES,PART-HOLD-BACK={2*part_target_duration:.3f}",
|
"#EXT-X-SERVER-CONTROL:CAN-BLOCK-RELOAD=YES,PART-HOLD-BACK="
|
||||||
f"#EXT-X-START:TIME-OFFSET=-{EXT_X_START_LL_HLS*part_target_duration:.3f},PRECISE=YES",
|
f"{2 * part_target_duration:.3f}",
|
||||||
|
"#EXT-X-START:TIME-OFFSET=-"
|
||||||
|
f"{EXT_X_START_LL_HLS * part_target_duration:.3f},PRECISE=YES",
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
response.append(
|
response.append(
|
||||||
f"#EXT-X-START:TIME-OFFSET=-{EXT_X_START_NON_LL_HLS*segment_duration:.3f},PRECISE=YES",
|
"#EXT-X-START:TIME-OFFSET=-"
|
||||||
|
f"{EXT_X_START_NON_LL_HLS * segment_duration:.3f},PRECISE=YES",
|
||||||
)
|
)
|
||||||
if segments:
|
if segments:
|
||||||
response.extend(segments)
|
response.extend(segments)
|
||||||
|
@ -99,18 +99,17 @@ def make_segment_with_parts(
|
|||||||
if discontinuity:
|
if discontinuity:
|
||||||
response.append("#EXT-X-DISCONTINUITY")
|
response.append("#EXT-X-DISCONTINUITY")
|
||||||
response.extend(
|
response.extend(
|
||||||
f'#EXT-X-PART:DURATION={TEST_PART_DURATION:.3f},URI="./segment/{segment}.{i}.m4s"{",INDEPENDENT=YES" if i%independent_period==0 else ""}'
|
f'#EXT-X-PART:DURATION={TEST_PART_DURATION:.3f},'
|
||||||
|
f'URI="./segment/{segment}.{i}.m4s"'
|
||||||
|
f'{",INDEPENDENT=YES" if i % independent_period == 0 else ""}'
|
||||||
for i in range(num_parts)
|
for i in range(num_parts)
|
||||||
)
|
)
|
||||||
response.extend(
|
response.append(
|
||||||
[
|
f"#EXT-X-PROGRAM-DATE-TIME:{FAKE_TIME.strftime('%Y-%m-%dT%H:%M:%S.%f')[:-3]}Z"
|
||||||
"#EXT-X-PROGRAM-DATE-TIME:"
|
|
||||||
+ FAKE_TIME.strftime("%Y-%m-%dT%H:%M:%S.%f")[:-3]
|
|
||||||
+ "Z",
|
|
||||||
f"#EXTINF:{math.ceil(SEGMENT_DURATION/TEST_PART_DURATION)*TEST_PART_DURATION:.3f},",
|
|
||||||
f"./segment/{segment}.m4s",
|
|
||||||
]
|
|
||||||
)
|
)
|
||||||
|
duration = math.ceil(SEGMENT_DURATION / TEST_PART_DURATION) * TEST_PART_DURATION
|
||||||
|
response.append(f"#EXTINF:{duration:.3f},")
|
||||||
|
response.append(f"./segment/{segment}.m4s")
|
||||||
return "\n".join(response)
|
return "\n".join(response)
|
||||||
|
|
||||||
|
|
||||||
@ -166,7 +165,7 @@ async def test_ll_hls_stream(
|
|||||||
# Fetch playlist
|
# Fetch playlist
|
||||||
playlist_url = "/" + master_playlist.splitlines()[-1]
|
playlist_url = "/" + master_playlist.splitlines()[-1]
|
||||||
playlist_response = await hls_client.get(
|
playlist_response = await hls_client.get(
|
||||||
playlist_url + f"?_HLS_msn={num_playlist_segments-1}"
|
playlist_url + f"?_HLS_msn={num_playlist_segments - 1}"
|
||||||
)
|
)
|
||||||
assert playlist_response.status == HTTPStatus.OK
|
assert playlist_response.status == HTTPStatus.OK
|
||||||
|
|
||||||
@ -465,7 +464,8 @@ async def test_ll_hls_playlist_bad_msn_part(
|
|||||||
).status == HTTPStatus.BAD_REQUEST
|
).status == HTTPStatus.BAD_REQUEST
|
||||||
assert (
|
assert (
|
||||||
await hls_client.get(
|
await hls_client.get(
|
||||||
f"/playlist.m3u8?_HLS_msn=1&_HLS_part={num_completed_parts-1+hass.data[DOMAIN][ATTR_SETTINGS].hls_advance_part_limit}"
|
"/playlist.m3u8?_HLS_msn=1&_HLS_part="
|
||||||
|
f"{num_completed_parts - 1 + hass.data[DOMAIN][ATTR_SETTINGS].hls_advance_part_limit}"
|
||||||
)
|
)
|
||||||
).status == HTTPStatus.BAD_REQUEST
|
).status == HTTPStatus.BAD_REQUEST
|
||||||
stream_worker_sync.resume()
|
stream_worker_sync.resume()
|
||||||
@ -515,13 +515,13 @@ async def test_ll_hls_playlist_rollover_part(
|
|||||||
*(
|
*(
|
||||||
[
|
[
|
||||||
hls_client.get(
|
hls_client.get(
|
||||||
f"/playlist.m3u8?_HLS_msn=1&_HLS_part={len(segment.parts)-1}"
|
f"/playlist.m3u8?_HLS_msn=1&_HLS_part={len(segment.parts) - 1}"
|
||||||
),
|
),
|
||||||
hls_client.get(
|
hls_client.get(
|
||||||
f"/playlist.m3u8?_HLS_msn=1&_HLS_part={len(segment.parts)}"
|
f"/playlist.m3u8?_HLS_msn=1&_HLS_part={len(segment.parts)}"
|
||||||
),
|
),
|
||||||
hls_client.get(
|
hls_client.get(
|
||||||
f"/playlist.m3u8?_HLS_msn=1&_HLS_part={len(segment.parts)+1}"
|
f"/playlist.m3u8?_HLS_msn=1&_HLS_part={len(segment.parts) + 1}"
|
||||||
),
|
),
|
||||||
hls_client.get("/playlist.m3u8?_HLS_msn=2&_HLS_part=0"),
|
hls_client.get("/playlist.m3u8?_HLS_msn=2&_HLS_part=0"),
|
||||||
]
|
]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user