55 lines
1.4 KiB
C#
55 lines
1.4 KiB
C#
using TeleWave.Domain.Broadcast;
|
|
using Xunit;
|
|
|
|
namespace TeleWave.Domain.Tests.Broadcast;
|
|
|
|
public class ScheduleEntryTests
|
|
{
|
|
private static readonly DateTimeOffset Start = new(2026, 1, 1, 0, 0, 0, TimeSpan.Zero);
|
|
|
|
[Fact]
|
|
public void Program_SetsKindAndEpg()
|
|
{
|
|
var channel = Guid.NewGuid();
|
|
var asset = Guid.NewGuid();
|
|
var show = Guid.NewGuid();
|
|
|
|
var e = ScheduleEntry.Program(channel, asset, Start, Start.AddMinutes(20), show, 3);
|
|
|
|
Assert.Equal(ScheduleEntryKind.Program, e.Kind);
|
|
Assert.Equal(show, e.ShowId);
|
|
Assert.Equal(3, e.EpisodeIndex);
|
|
Assert.Null(e.BumperVariantId);
|
|
}
|
|
|
|
[Fact]
|
|
public void Ad_HasNoShow()
|
|
{
|
|
var e = ScheduleEntry.Ad(Guid.NewGuid(), Guid.NewGuid(), Start, Start.AddMinutes(1));
|
|
|
|
Assert.Equal(ScheduleEntryKind.Ad, e.Kind);
|
|
Assert.Null(e.ShowId);
|
|
Assert.Null(e.EpisodeIndex);
|
|
}
|
|
|
|
[Fact]
|
|
public void Bumper_CarriesShowAndVariant()
|
|
{
|
|
var toShow = Guid.NewGuid();
|
|
var variant = Guid.NewGuid();
|
|
|
|
var e = ScheduleEntry.Bumper(
|
|
Guid.NewGuid(),
|
|
Guid.NewGuid(),
|
|
Start,
|
|
Start.AddSeconds(8),
|
|
toShow,
|
|
variant
|
|
);
|
|
|
|
Assert.Equal(ScheduleEntryKind.Bumper, e.Kind);
|
|
Assert.Equal(toShow, e.ShowId);
|
|
Assert.Equal(variant, e.BumperVariantId);
|
|
}
|
|
}
|