mirror of https://github.com/ErsatzTV/ErsatzTV.git
17 changed files with 11305 additions and 70 deletions
@ -0,0 +1,411 @@
@@ -0,0 +1,411 @@
|
||||
using ErsatzTV.Core.Domain.Scheduling; |
||||
using ErsatzTV.Core.Scheduling; |
||||
using FluentAssertions; |
||||
using NUnit.Framework; |
||||
|
||||
namespace ErsatzTV.Core.Tests.Scheduling; |
||||
|
||||
public static class PlayoutTemplateSelectorTests |
||||
{ |
||||
[TestFixture] |
||||
public class GetPlayoutTemplateFor |
||||
{ |
||||
private static readonly TimeSpan Offset = TimeSpan.FromHours(-5); |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Before_Start_Should_Not_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 4, |
||||
StartDay = 1, |
||||
EndMonth = 6, |
||||
EndDay = 15 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2024, 3, 31, 0, 0, 0, Offset)); |
||||
|
||||
result.IsNone.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_On_Start_Should_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 4, |
||||
StartDay = 1, |
||||
EndMonth = 6, |
||||
EndDay = 15 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2024, 4, 1, 0, 0, 0, Offset)); |
||||
|
||||
result.IsSome.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_In_Range_Should_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 4, |
||||
StartDay = 1, |
||||
EndMonth = 6, |
||||
EndDay = 15 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2024, 4, 20, 0, 0, 0, Offset)); |
||||
|
||||
result.IsSome.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_On_End_Should_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 4, |
||||
StartDay = 1, |
||||
EndMonth = 6, |
||||
EndDay = 15 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2024, 6, 15, 0, 0, 0, Offset)); |
||||
|
||||
result.IsSome.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_After_End_Should_Not_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 4, |
||||
StartDay = 1, |
||||
EndMonth = 6, |
||||
EndDay = 15 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2024, 6, 16, 0, 0, 0, Offset)); |
||||
|
||||
result.IsNone.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Before_Invalid_Start_Date_Should_Not_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 2, |
||||
StartDay = 29, |
||||
EndMonth = 6, |
||||
EndDay = 15 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2023, 2, 28, 0, 0, 0, Offset)); |
||||
|
||||
result.IsNone.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_After_Invalid_Start_Date_Should_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 2, |
||||
StartDay = 29, |
||||
EndMonth = 6, |
||||
EndDay = 15 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2023, 3, 1, 0, 0, 0, Offset)); |
||||
|
||||
result.IsSome.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Before_Invalid_End_Date_Should_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 1, |
||||
StartDay = 1, |
||||
EndMonth = 2, |
||||
EndDay = 29 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2023, 2, 28, 0, 0, 0, Offset)); |
||||
|
||||
result.IsSome.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_After_Invalid_End_Date_Should_Not_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 1, |
||||
StartDay = 1, |
||||
EndMonth = 2, |
||||
EndDay = 29 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2023, 3, 1, 0, 0, 0, Offset)); |
||||
|
||||
result.IsNone.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Wrap_Around_Before_Start_Should_Not_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 6, |
||||
StartDay = 15, |
||||
EndMonth = 4, |
||||
EndDay = 1 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2024, 6, 14, 0, 0, 0, Offset)); |
||||
|
||||
result.IsNone.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Wrap_Around_On_Start_Should_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 6, |
||||
StartDay = 15, |
||||
EndMonth = 4, |
||||
EndDay = 1 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2024, 6, 15, 0, 0, 0, Offset)); |
||||
|
||||
result.IsSome.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Wrap_Around_In_Range_Should_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 6, |
||||
StartDay = 15, |
||||
EndMonth = 4, |
||||
EndDay = 1 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2024, 7, 20, 0, 0, 0, Offset)); |
||||
|
||||
result.IsSome.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Wrap_Around_On_End_Should_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 6, |
||||
StartDay = 15, |
||||
EndMonth = 4, |
||||
EndDay = 1 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2024, 4, 1, 0, 0, 0, Offset)); |
||||
|
||||
result.IsSome.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Wrap_Around_After_End_Should_Not_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 6, |
||||
StartDay = 15, |
||||
EndMonth = 4, |
||||
EndDay = 1 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2024, 4, 2, 0, 0, 0, Offset)); |
||||
|
||||
result.IsNone.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Wrap_Around_Before_Invalid_Start_Date_Should_Not_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 2, |
||||
StartDay = 29, |
||||
EndMonth = 1, |
||||
EndDay = 1 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2023, 2, 28, 0, 0, 0, Offset)); |
||||
|
||||
result.IsNone.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Wrap_Around_After_Invalid_Start_Date_Should_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 2, |
||||
StartDay = 29, |
||||
EndMonth = 1, |
||||
EndDay = 1 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2023, 3, 1, 0, 0, 0, Offset)); |
||||
|
||||
result.IsSome.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Wrap_Around_Before_Invalid_End_Date_Should_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 5, |
||||
StartDay = 1, |
||||
EndMonth = 2, |
||||
EndDay = 29 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2023, 2, 28, 0, 0, 0, Offset)); |
||||
|
||||
result.IsSome.Should().BeTrue(); |
||||
} |
||||
|
||||
[Test] |
||||
public void LimitToDateRange_Wrap_Around_After_Invalid_End_Date_Should_Not_Return_Template() |
||||
{ |
||||
var template = new PlayoutTemplate |
||||
{ |
||||
DaysOfWeek = PlayoutTemplate.AllDaysOfWeek(), |
||||
DaysOfMonth = PlayoutTemplate.AllDaysOfMonth(), |
||||
MonthsOfYear = PlayoutTemplate.AllMonthsOfYear(), |
||||
LimitToDateRange = true, |
||||
StartMonth = 5, |
||||
StartDay = 1, |
||||
EndMonth = 2, |
||||
EndDay = 29 |
||||
}; |
||||
|
||||
Option<PlayoutTemplate> result = PlayoutTemplateSelector.GetPlayoutTemplateFor( |
||||
new List<PlayoutTemplate> { template }, |
||||
new DateTimeOffset(2023, 3, 1, 0, 0, 0, Offset)); |
||||
|
||||
result.IsNone.Should().BeTrue(); |
||||
} |
||||
} |
||||
} |
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,94 @@
@@ -0,0 +1,94 @@
|
||||
using System; |
||||
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
||||
#nullable disable |
||||
|
||||
namespace ErsatzTV.Infrastructure.MySql.Migrations |
||||
{ |
||||
/// <inheritdoc />
|
||||
public partial class Rework_PlayoutTemplate_ActiveDateRange : Migration |
||||
{ |
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder) |
||||
{ |
||||
migrationBuilder.DropColumn( |
||||
name: "EndDate", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.DropColumn( |
||||
name: "StartDate", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.AddColumn<int>( |
||||
name: "EndDay", |
||||
table: "PlayoutTemplate", |
||||
type: "int", |
||||
nullable: false, |
||||
defaultValue: 0); |
||||
|
||||
migrationBuilder.AddColumn<int>( |
||||
name: "EndMonth", |
||||
table: "PlayoutTemplate", |
||||
type: "int", |
||||
nullable: false, |
||||
defaultValue: 0); |
||||
|
||||
migrationBuilder.AddColumn<bool>( |
||||
name: "LimitToDateRange", |
||||
table: "PlayoutTemplate", |
||||
type: "tinyint(1)", |
||||
nullable: false, |
||||
defaultValue: false); |
||||
|
||||
migrationBuilder.AddColumn<int>( |
||||
name: "StartDay", |
||||
table: "PlayoutTemplate", |
||||
type: "int", |
||||
nullable: false, |
||||
defaultValue: 0); |
||||
|
||||
migrationBuilder.AddColumn<int>( |
||||
name: "StartMonth", |
||||
table: "PlayoutTemplate", |
||||
type: "int", |
||||
nullable: false, |
||||
defaultValue: 0); |
||||
} |
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder) |
||||
{ |
||||
migrationBuilder.DropColumn( |
||||
name: "EndDay", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.DropColumn( |
||||
name: "EndMonth", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.DropColumn( |
||||
name: "LimitToDateRange", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.DropColumn( |
||||
name: "StartDay", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.DropColumn( |
||||
name: "StartMonth", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.AddColumn<DateTimeOffset>( |
||||
name: "EndDate", |
||||
table: "PlayoutTemplate", |
||||
type: "datetime(6)", |
||||
nullable: true); |
||||
|
||||
migrationBuilder.AddColumn<DateTimeOffset>( |
||||
name: "StartDate", |
||||
table: "PlayoutTemplate", |
||||
type: "datetime(6)", |
||||
nullable: true); |
||||
} |
||||
} |
||||
} |
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,94 @@
@@ -0,0 +1,94 @@
|
||||
using System; |
||||
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
||||
#nullable disable |
||||
|
||||
namespace ErsatzTV.Infrastructure.Sqlite.Migrations |
||||
{ |
||||
/// <inheritdoc />
|
||||
public partial class Rework_PlayoutTemplate_ActiveDateRange : Migration |
||||
{ |
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder) |
||||
{ |
||||
migrationBuilder.DropColumn( |
||||
name: "EndDate", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.DropColumn( |
||||
name: "StartDate", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.AddColumn<int>( |
||||
name: "EndDay", |
||||
table: "PlayoutTemplate", |
||||
type: "INTEGER", |
||||
nullable: false, |
||||
defaultValue: 0); |
||||
|
||||
migrationBuilder.AddColumn<int>( |
||||
name: "EndMonth", |
||||
table: "PlayoutTemplate", |
||||
type: "INTEGER", |
||||
nullable: false, |
||||
defaultValue: 0); |
||||
|
||||
migrationBuilder.AddColumn<bool>( |
||||
name: "LimitToDateRange", |
||||
table: "PlayoutTemplate", |
||||
type: "INTEGER", |
||||
nullable: false, |
||||
defaultValue: false); |
||||
|
||||
migrationBuilder.AddColumn<int>( |
||||
name: "StartDay", |
||||
table: "PlayoutTemplate", |
||||
type: "INTEGER", |
||||
nullable: false, |
||||
defaultValue: 0); |
||||
|
||||
migrationBuilder.AddColumn<int>( |
||||
name: "StartMonth", |
||||
table: "PlayoutTemplate", |
||||
type: "INTEGER", |
||||
nullable: false, |
||||
defaultValue: 0); |
||||
} |
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder) |
||||
{ |
||||
migrationBuilder.DropColumn( |
||||
name: "EndDay", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.DropColumn( |
||||
name: "EndMonth", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.DropColumn( |
||||
name: "LimitToDateRange", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.DropColumn( |
||||
name: "StartDay", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.DropColumn( |
||||
name: "StartMonth", |
||||
table: "PlayoutTemplate"); |
||||
|
||||
migrationBuilder.AddColumn<DateTimeOffset>( |
||||
name: "EndDate", |
||||
table: "PlayoutTemplate", |
||||
type: "TEXT", |
||||
nullable: true); |
||||
|
||||
migrationBuilder.AddColumn<DateTimeOffset>( |
||||
name: "StartDate", |
||||
table: "PlayoutTemplate", |
||||
type: "TEXT", |
||||
nullable: true); |
||||
} |
||||
} |
||||
} |
||||
Loading…
Reference in new issue