Files
canvasManagement/Management.Test/Features/SemesterPlannerTests.cs

87 lines
1.9 KiB
C#

using CanvasModel.EnrollmentTerms;
namespace Management.Test;
public class SemesterPlannerTests
{
[Test]
public void TestCanCreatePlanner()
{
var canvasTerm = new EnrollmentTermModel(
Id: 1,
Name: "one",
StartAt: new DateTime(2022, 1, 1),
EndAt: new DateTime(2022, 1, 2)
);
var semester = new SemesterPlanner(canvasTerm);
semester.Months.Count().Should().Be(1);
}
[Test]
public void TestNewPlannerHasCorrectNumberOfMonths()
{
var canvasTerm = new EnrollmentTermModel(
Id: 1,
Name: "one",
StartAt: new DateTime(2022, 1, 1),
EndAt: new DateTime(2022, 2, 1)
);
var semester = new SemesterPlanner(canvasTerm);
semester.Months.Count().Should().Be(2);
}
[Test]
public void TestNewPlannerHandlesTermsThatWrapYears()
{
var canvasTerm = new EnrollmentTermModel(
Id: 1,
Name: "one",
StartAt: new DateTime(2022, 12, 1),
EndAt: new DateTime(2023, 1, 1)
);
var semester = new SemesterPlanner(canvasTerm);
semester.Months.Count().Should().Be(2);
}
[Test]
public void TestSemesterGetsCorrectMonths()
{
var canvasTerm = new EnrollmentTermModel(
Id: 1,
Name: "one",
StartAt: new DateTime(2022, 1, 1),
EndAt: new DateTime(2022, 2, 1)
);
var semester = new SemesterPlanner(canvasTerm);
semester.Months.First().Month.Should().Be(1);
semester.Months.Last().Month.Should().Be(2);
}
[Test]
public void TestMonthsCanWrapYears()
{
var canvasTerm = new EnrollmentTermModel(
Id: 1,
Name: "one",
StartAt: new DateTime(2022, 12, 1),
EndAt: new DateTime(2023, 1, 1)
);
var semester = new SemesterPlanner(canvasTerm);
semester.Months.First().Month.Should().Be(12);
semester.Months.First().Year.Should().Be(2022);
semester.Months.Last().Month.Should().Be(1);
semester.Months.Last().Year.Should().Be(2023);
}
}