public void CalendarHoursTest(int? monthCount) { var now = ClockProxy.Clock.Now; var months = new MonthRangeCollection(now, monthCount ?? 12); var startTime = now.TrimToDay().Add(months.TimeCalendar.StartOffset); var endTime = startTime.AddMonths(monthCount ?? 12).Add(months.TimeCalendar.EndOffset); months.Start.Should().Be(startTime); months.End.Should().Be(endTime); months.MonthCount.Should().Be(monthCount); var items = months.GetMonths().ToList(); items.Count.Should().Be(monthCount); Enumerable .Range(0, monthCount ?? 12) .RunEach(i => { items[i].Start.Should().Be(startTime.AddMonths(i)); items[i].End.Should().Be(months.TimeCalendar.MapEnd(startTime.AddMonths(i + 1))); items[i].UnmappedStart.Should().Be(startTime.AddMonths(i)); items[i].UnmappedEnd.Should().Be(startTime.AddMonths(i + 1)); items[i].IsSamePeriod(new MonthRange(months.Start.AddMonths(i))).Should().Be.True(); var ym = TimeTool.AddMonth(now.Year, now.Month, i); items[i].IsSamePeriod(new MonthRange(ym.Year ?? 0, ym.Month ?? 1)).Should().Be.True(); }); }
public void CalendarHoursTest(int?monthCount) { var now = ClockProxy.Clock.Now; var months = new MonthRangeCollection(now, monthCount ?? 12); var startTime = now.TrimToDay().Add(months.TimeCalendar.StartOffset); var endTime = startTime.AddMonths(monthCount ?? 12).Add(months.TimeCalendar.EndOffset); months.Start.Should().Be(startTime); months.End.Should().Be(endTime); months.MonthCount.Should().Be(monthCount); var items = months.GetMonths().ToList(); items.Count.Should().Be(monthCount); Enumerable .Range(0, monthCount ?? 12) .RunEach(i => { items[i].Start.Should().Be(startTime.AddMonths(i)); items[i].End.Should().Be(months.TimeCalendar.MapEnd(startTime.AddMonths(i + 1))); items[i].UnmappedStart.Should().Be(startTime.AddMonths(i)); items[i].UnmappedEnd.Should().Be(startTime.AddMonths(i + 1)); items[i].IsSamePeriod(new MonthRange(months.Start.AddMonths(i))).Should().Be.True(); var ym = TimeTool.AddMonth(now.Year, now.Month, i); items[i].IsSamePeriod(new MonthRange(ym.Year ?? 0, ym.Month ?? 1)).Should().Be.True(); }); }
public void SingleMonthsTest() { const int startYear = 2004; const int startMonth = 6; var monthRanges = new MonthRangeCollection(startYear, startMonth, 1); monthRanges.MonthCount.Should().Be(1); var months = monthRanges.GetMonths().ToList(); months.Count.Should().Be(1); months[0].IsSamePeriod(new MonthRange(startYear, startMonth)); monthRanges.StartYear.Should().Be(startYear); monthRanges.EndYear.Should().Be(startYear); monthRanges.StartMonth.Should().Be(startMonth); monthRanges.EndMonth.Should().Be(startMonth); }
public void CalendarMonthsTest() { const int startYear = 2004; const int startMonth = 11; const int monthCount = 5; var monthRanges = new MonthRangeCollection(startYear, startMonth, monthCount); Assert.AreEqual(monthRanges.MonthCount, monthCount); Assert.AreEqual(monthRanges.StartMonth, startMonth); Assert.AreEqual(monthRanges.StartYear, startYear); Assert.AreEqual(monthRanges.EndYear, 2005); Assert.AreEqual(monthRanges.EndMonth, 3); var months = monthRanges.GetMonths().ToList(); Assert.AreEqual(monthCount, months.Count); Assert.IsTrue(months[0].IsSamePeriod(new MonthRange(2004, 11))); Assert.IsTrue(months[1].IsSamePeriod(new MonthRange(2004, 12))); Assert.IsTrue(months[2].IsSamePeriod(new MonthRange(2005, 1))); Assert.IsTrue(months[3].IsSamePeriod(new MonthRange(2005, 2))); Assert.IsTrue(months[4].IsSamePeriod(new MonthRange(2005, 3))); }