feat(392): expose ProgramSchedule.padToNearestMinute on the REST API
This commit is contained in:
@@ -30,6 +30,55 @@ public class ProgramScheduleHandlerTests
|
||||
[TearDown]
|
||||
public async Task TearDown() => await _db.DisposeAsync();
|
||||
|
||||
[Test]
|
||||
public async Task Create_and_update_persist_PadToNearestMinute()
|
||||
{
|
||||
var createHandler = new CreateProgramScheduleHandler(_db.Factory);
|
||||
|
||||
Either<BaseError, CreateProgramScheduleResult> createResult = await createHandler.Handle(
|
||||
new CreateProgramSchedule(
|
||||
"Pad Test",
|
||||
KeepMultiPartEpisodesTogether: true,
|
||||
TreatCollectionsAsShows: true,
|
||||
ShuffleScheduleItems: false,
|
||||
RandomStartPoint: false,
|
||||
FixedStartTimeBehavior.Flexible,
|
||||
PadToNearestMinute: 30),
|
||||
CancellationToken.None);
|
||||
|
||||
int scheduleId = createResult.Match(Left: _ => throw new AssertionException("Expected a Right result"), Right: r => r.ProgramScheduleId);
|
||||
|
||||
await using (TvContext context = _db.CreateContext())
|
||||
{
|
||||
ProgramSchedule? schedule = await context.ProgramSchedules.FindAsync(scheduleId);
|
||||
schedule.ShouldNotBeNull();
|
||||
schedule.PadToNearestMinute.ShouldBe(30);
|
||||
}
|
||||
|
||||
var updateHandler = new UpdateProgramScheduleHandler(_db.Factory, _worker);
|
||||
|
||||
Either<BaseError, UpdateProgramScheduleResult> updateResult = await updateHandler.Handle(
|
||||
new UpdateProgramSchedule(
|
||||
scheduleId,
|
||||
"Pad Test",
|
||||
KeepMultiPartEpisodesTogether: true,
|
||||
TreatCollectionsAsShows: true,
|
||||
ShuffleScheduleItems: false,
|
||||
RandomStartPoint: false,
|
||||
FixedStartTimeBehavior.Flexible,
|
||||
PadToNearestMinute: null),
|
||||
CancellationToken.None);
|
||||
|
||||
updateResult.IsRight.ShouldBeTrue();
|
||||
|
||||
await using (TvContext context = _db.CreateContext())
|
||||
{
|
||||
ProgramSchedule? schedule = await context.ProgramSchedules.FindAsync(scheduleId);
|
||||
schedule.ShouldNotBeNull();
|
||||
schedule.PadToNearestMinute.ShouldBeNull();
|
||||
}
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task Update_Should_Return_NotFoundError_When_Schedule_Missing()
|
||||
{
|
||||
@@ -125,7 +174,8 @@ public class ProgramScheduleHandlerTests
|
||||
TreatCollectionsAsShows: true,
|
||||
ShuffleScheduleItems: false,
|
||||
RandomStartPoint: false,
|
||||
FixedStartTimeBehavior.Flexible);
|
||||
FixedStartTimeBehavior.Flexible,
|
||||
PadToNearestMinute: null);
|
||||
|
||||
private static AddProgramScheduleItem MakeAdd(int scheduleId, CollectionType collectionType) =>
|
||||
new(
|
||||
|
||||
Reference in New Issue
Block a user