|
|
|
@ -46,7 +46,7 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(playoutBuilderState.CurrentTime); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(playoutBuilderState.CurrentTime); |
|
|
|
|
|
|
|
|
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(2); |
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(4); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
@ -61,16 +61,19 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[0].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddHours(1)); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddHours(1)); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(2); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[1].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.AddHours(2)); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.AddHours(2)); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[2].GuideFinish.HasValue.Should().BeTrue(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -105,7 +108,7 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(playoutBuilderState.CurrentTime); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(playoutBuilderState.CurrentTime); |
|
|
|
|
|
|
|
|
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(2); |
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(4); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
@ -120,16 +123,19 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[0].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(2); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[1].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[2].GuideFinish.HasValue.Should().BeTrue(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -165,7 +171,7 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
|
|
|
|
|
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(2); |
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(4); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
@ -180,16 +186,19 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[0].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(2); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[1].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[2].GuideFinish.HasValue.Should().BeTrue(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -235,7 +244,7 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(playoutBuilderState.CurrentTime); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(playoutBuilderState.CurrentTime); |
|
|
|
|
|
|
|
|
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(2); |
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(4); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
@ -251,21 +260,25 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[0].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(2); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[1].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[2].GuideFinish.HasValue.Should().BeTrue(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[3].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[3].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[3].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
playoutItems[3].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
playoutItems[3].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[3].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[3].FillerKind.Should().Be(FillerKind.Fallback); |
|
|
|
playoutItems[3].FillerKind.Should().Be(FillerKind.Fallback); |
|
|
|
|
|
|
|
playoutItems[3].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -311,7 +324,7 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(playoutBuilderState.CurrentTime); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(playoutBuilderState.CurrentTime); |
|
|
|
|
|
|
|
|
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(2); |
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(4); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
@ -327,31 +340,37 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[0].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(2); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[1].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[2].GuideFinish.HasValue.Should().BeTrue(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[3].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[3].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[3].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
playoutItems[3].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
playoutItems[3].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[3].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[3].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
playoutItems[3].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
|
|
|
|
playoutItems[3].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[4].MediaItemId.Should().Be(4); |
|
|
|
playoutItems[4].MediaItemId.Should().Be(4); |
|
|
|
playoutItems[4].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 50, 0))); |
|
|
|
playoutItems[4].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 50, 0))); |
|
|
|
playoutItems[4].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[4].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[4].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
playoutItems[4].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
|
|
|
|
playoutItems[3].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[5].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[5].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[5].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 55, 0))); |
|
|
|
playoutItems[5].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 55, 0))); |
|
|
|
playoutItems[5].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[5].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[5].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
playoutItems[5].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
|
|
|
|
playoutItems[3].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -397,7 +416,7 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 57, 0))); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 57, 0))); |
|
|
|
|
|
|
|
|
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(2); |
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(4); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
@ -413,31 +432,37 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[0].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(2); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[1].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[2].GuideFinish.HasValue.Should().BeTrue(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[3].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[3].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[3].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
playoutItems[3].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
playoutItems[3].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[3].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[3].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
playoutItems[3].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
|
|
|
|
playoutItems[3].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[4].MediaItemId.Should().Be(4); |
|
|
|
playoutItems[4].MediaItemId.Should().Be(4); |
|
|
|
playoutItems[4].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 49, 0))); |
|
|
|
playoutItems[4].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 49, 0))); |
|
|
|
playoutItems[4].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[4].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[4].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
playoutItems[4].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
|
|
|
|
playoutItems[4].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[5].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[5].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[5].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 53, 0))); |
|
|
|
playoutItems[5].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 53, 0))); |
|
|
|
playoutItems[5].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[5].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[5].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
playoutItems[5].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
|
|
|
|
playoutItems[5].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
@ -500,7 +525,7 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutBuilderState.CurrentTime.Should().Be(StartState.CurrentTime.AddHours(3)); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(playoutBuilderState.CurrentTime); |
|
|
|
playoutItems.Last().FinishOffset.Should().Be(playoutBuilderState.CurrentTime); |
|
|
|
|
|
|
|
|
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(2); |
|
|
|
playoutBuilderState.NextGuideGroup.Should().Be(4); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.DurationFinish.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.InFlood.Should().BeFalse(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
playoutBuilderState.MultipleRemaining.IsNone.Should().BeTrue(); |
|
|
|
@ -517,36 +542,43 @@ namespace ErsatzTV.Core.Tests.Scheduling |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].StartOffset.Should().Be(StartState.CurrentTime); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[0].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[0].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].MediaItemId.Should().Be(2); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].StartOffset.Should().Be(StartState.CurrentTime.AddMinutes(55)); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[1].GuideGroup.Should().Be(2); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[1].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[1].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].MediaItemId.Should().Be(1); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(1, 50, 0))); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[2].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
playoutItems[2].FillerKind.Should().Be(FillerKind.None); |
|
|
|
|
|
|
|
playoutItems[2].GuideFinish.HasValue.Should().BeTrue(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[3].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[3].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[3].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
playoutItems[3].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 45, 0))); |
|
|
|
playoutItems[3].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[3].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[3].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
playoutItems[3].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
|
|
|
|
playoutItems[3].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[4].MediaItemId.Should().Be(4); |
|
|
|
playoutItems[4].MediaItemId.Should().Be(4); |
|
|
|
playoutItems[4].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 49, 0))); |
|
|
|
playoutItems[4].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 49, 0))); |
|
|
|
playoutItems[4].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[4].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[4].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
playoutItems[4].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
|
|
|
|
playoutItems[4].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[5].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[5].MediaItemId.Should().Be(3); |
|
|
|
playoutItems[5].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 53, 0))); |
|
|
|
playoutItems[5].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 53, 0))); |
|
|
|
playoutItems[5].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[5].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[5].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
playoutItems[5].FillerKind.Should().Be(FillerKind.Tail); |
|
|
|
|
|
|
|
playoutItems[5].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
|
|
|
|
|
|
|
|
playoutItems[6].MediaItemId.Should().Be(5); |
|
|
|
playoutItems[6].MediaItemId.Should().Be(5); |
|
|
|
playoutItems[6].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 57, 0))); |
|
|
|
playoutItems[6].StartOffset.Should().Be(StartState.CurrentTime.Add(new TimeSpan(2, 57, 0))); |
|
|
|
playoutItems[6].GuideGroup.Should().Be(1); |
|
|
|
playoutItems[6].GuideGroup.Should().Be(3); |
|
|
|
playoutItems[6].FillerKind.Should().Be(FillerKind.Fallback); |
|
|
|
playoutItems[6].FillerKind.Should().Be(FillerKind.Fallback); |
|
|
|
|
|
|
|
playoutItems[6].GuideFinish.HasValue.Should().BeFalse(); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|