update
This commit is contained in:
@@ -60,23 +60,52 @@ def test_clip_zu_altem_abend(client, film, monkeypatch):
|
||||
|
||||
# Keine Aufnahme an dem Tag
|
||||
async def keine(watched_at):
|
||||
return None
|
||||
return []
|
||||
|
||||
monkeypatch.setattr(clips, "aufnahme_des_abends", keine)
|
||||
monkeypatch.setattr(clips, "aufnahmen_des_abends", keine)
|
||||
assert client.get(f"/api/clips/von-film/{film(4)}").json()["stuecke"] == []
|
||||
antwort = client.post("/api/clips/von-film", json={"movie_id": film(4)})
|
||||
assert antwort.status_code == 404 and "Aufnahme" in antwort.json()["detail"]
|
||||
|
||||
# Mit Aufnahme: die Marke liegt kurz nach ihrem Beginn
|
||||
beginn = datetime(2026, 9, 23, 19, 0, tzinfo=timezone.utc)
|
||||
# Zwei Stücke, weil der Stream neu gestartet wurde
|
||||
stuecke = [
|
||||
{"start": "2026-09-23T19:00:00+00:00", "dauer": 1800.0},
|
||||
{"start": "2026-09-23T20:00:00+00:00", "dauer": 600.0},
|
||||
]
|
||||
|
||||
async def da(watched_at):
|
||||
return beginn
|
||||
return stuecke
|
||||
|
||||
monkeypatch.setattr(clips, "aufnahme_des_abends", da)
|
||||
monkeypatch.setattr(clips, "aufnahmen_des_abends", da)
|
||||
assert client.get(f"/api/clips/von-film/{film(4)}").json()["stuecke"] == stuecke
|
||||
|
||||
# Ohne Wahl: die Marke liegt kurz nach dem Beginn des ersten Stücks
|
||||
m = client.post("/api/clips/von-film", json={"movie_id": film(4)}).json()
|
||||
assert m["movie_id"] == film(4)
|
||||
assert m["marke_at"] == "2026-09-23T19:01:00+00:00"
|
||||
|
||||
# Mit Wahl: nach dem Beginn des gewählten Stücks
|
||||
m = client.post(
|
||||
"/api/clips/von-film", json={"movie_id": film(4), "start": stuecke[1]["start"]}
|
||||
).json()
|
||||
assert m["marke_at"] == "2026-09-23T20:01:00+00:00"
|
||||
|
||||
|
||||
def test_stuecke_eines_abends_nach_beginn_geordnet(monkeypatch):
|
||||
import asyncio
|
||||
|
||||
async def segmente(von, bis):
|
||||
return [
|
||||
{"start": "2026-09-23T21:00:00Z", "duration": 600.0},
|
||||
{"start": "2026-09-23T19:00:00Z", "duration": 1800.04},
|
||||
]
|
||||
|
||||
monkeypatch.setattr(clips, "_segmente", segmente)
|
||||
assert asyncio.run(clips.aufnahmen_des_abends("2026-09-23T20:00:00+00:00")) == [
|
||||
{"start": "2026-09-23T19:00:00+00:00", "dauer": 1800.0},
|
||||
{"start": "2026-09-23T21:00:00+00:00", "dauer": 600.0},
|
||||
]
|
||||
|
||||
|
||||
def test_fremde_sehen_nichts_der_host_alles(client, client2, zuschauer, hostmodus):
|
||||
m = marke(client)
|
||||
|
||||
Reference in New Issue
Block a user