#132 | #121: backoffice / dev-1.0-121 (#131)

cfr #121

Co-authored-by: Christophe Siraut <d@tobald.eu.org>
Co-authored-by: bkfox <thomas bkfox net>
Co-authored-by: Thomas Kairos <thomas@bkfox.net>
Reviewed-on: rc/aircox#131
Co-authored-by: Chris Tactic <ctactic@noreply.git.radiocampus.be>
Co-committed-by: Chris Tactic <ctactic@noreply.git.radiocampus.be>
This commit is contained in:
2024-04-28 22:02:09 +02:00
committed by Thomas Kairos
parent 1e17a1334a
commit 55123c386d
348 changed files with 124397 additions and 17879 deletions

View File

@ -66,7 +66,7 @@ class FakeSocket:
# -- models
@pytest.fixture
def station():
station = models.Station(name="test", path=working_dir, default=True, active=True)
station = models.Station(name="test", default=True, active=True)
station.save()
return station
@ -77,7 +77,6 @@ def stations(station):
models.Station(
name=f"test-{i}",
slug=f"test-{i}",
path=working_dir,
default=(i == 0),
active=True,
)
@ -146,24 +145,28 @@ def episode(program):
def sound(program, episode):
sound = models.Sound(
program=program,
episode=episode,
name="sound",
type=models.Sound.TYPE_ARCHIVE,
position=0,
broadcast=True,
file="sound.mp3",
)
sound.save(check=False)
sound.save(sync=False)
return sound
@pytest.fixture
def episode_sound(episode, sound):
obj = models.EpisodeSound(episode=episode, sound=sound, position=0, broadcast=sound.broadcast)
obj.save()
return obj
@pytest.fixture
def sounds(program):
items = [
models.Sound(
name=f"sound {i}",
program=program,
type=models.Sound.TYPE_ARCHIVE,
position=i,
broadcast=True,
file=f"sound-{i}.mp3",
)
for i in range(0, 3)

View File

@ -20,7 +20,7 @@ def monitor(streamer):
@pytest.fixture
def diffusion(program, episode, sound):
def diffusion(program, episode, episode_sound):
return baker.make(
models.Diffusion,
program=program,
@ -33,10 +33,10 @@ def diffusion(program, episode, sound):
@pytest.fixture
def source(monitor, streamer, sound, diffusion):
def source(monitor, streamer, episode_sound, diffusion):
source = next(monitor.streamer.playlists)
source.uri = sound.file.path
source.episode_id = sound.episode_id
source.uri = episode_sound.sound.file.path
source.episode_id = episode_sound.episode_id
source.air_time = diffusion.start + tz.timedelta(seconds=10)
return source
@ -185,7 +185,7 @@ class TestMonitor:
monitor.trace_tracks(log)
@pytest.mark.django_db(transaction=True)
def test_handle_diffusions(self, monitor, streamer, diffusion, sound):
def test_handle_diffusions(self, monitor, streamer, diffusion, episode_sound):
interface(
monitor,
{

View File

@ -67,7 +67,7 @@ class TestPlaylistSource:
@pytest.mark.django_db
def test_get_sound_queryset(self, playlist_source, sounds):
query = playlist_source.get_sound_queryset()
assert all(r.program_id == playlist_source.program.pk and r.type == r.TYPE_ARCHIVE for r in query)
assert all(r.program_id == playlist_source.program.pk and r.broadcast for r in query)
@pytest.mark.django_db
def test_get_playlist(self, playlist_source, sounds):