AddHalfyears() public method

public AddHalfyears ( int count ) : HalfyearRange
count int
return HalfyearRange
Ejemplo n.º 1
0
        public void AddHalfyearsTest()
        {
            const int yearStartMonth = April;

            var currentYear  = ClockProxy.Clock.Now.Year;
            var timeCalendar = TimeCalendar.NewEmptyOffset(yearStartMonth);

            var calendarStartDate = new DateTime(currentYear, 4, 1);
            var calendarHalfyear  = new HalfyearRange(currentYear, HalfyearKind.First, timeCalendar);

            calendarHalfyear.AddHalfyears(0).Should().Be(calendarHalfyear);

            var prevH1 = calendarHalfyear.AddHalfyears(-1);

            prevH1.Halfyear.Should().Be(HalfyearKind.Second);
            prevH1.BaseYear.Should().Be(currentYear - 1);
            prevH1.Start.Should().Be(calendarStartDate.AddMonths(-6));
            prevH1.End.Should().Be(calendarStartDate);

            var prevH2 = calendarHalfyear.AddHalfyears(-2);

            prevH2.Halfyear.Should().Be(HalfyearKind.First);
            prevH2.BaseYear.Should().Be(currentYear - 1);
            prevH2.Start.Should().Be(calendarStartDate.AddMonths(-12));
            prevH2.End.Should().Be(calendarStartDate.AddMonths(-6));

            var prevH3 = calendarHalfyear.AddHalfyears(-3);

            prevH3.Halfyear.Should().Be(HalfyearKind.Second);
            prevH3.BaseYear.Should().Be(currentYear - 2);
            prevH3.Start.Should().Be(calendarStartDate.AddMonths(-18));
            prevH3.End.Should().Be(calendarStartDate.AddMonths(-12));

            var futureH1 = calendarHalfyear.AddHalfyears(1);

            futureH1.Halfyear.Should().Be(HalfyearKind.Second);
            futureH1.BaseYear.Should().Be(currentYear);
            futureH1.Start.Should().Be(calendarStartDate.AddMonths(6));
            futureH1.End.Should().Be(calendarStartDate.AddMonths(12));

            var futureH2 = calendarHalfyear.AddHalfyears(2);

            futureH2.Halfyear.Should().Be(HalfyearKind.First);
            futureH2.BaseYear.Should().Be(currentYear + 1);
            futureH2.Start.Should().Be(calendarStartDate.AddMonths(12));
            futureH2.End.Should().Be(calendarStartDate.AddMonths(18));

            var futureH3 = calendarHalfyear.AddHalfyears(3);

            futureH3.Halfyear.Should().Be(HalfyearKind.Second);
            futureH3.BaseYear.Should().Be(currentYear + 1);
            futureH3.Start.Should().Be(calendarStartDate.AddMonths(18));
            futureH3.End.Should().Be(calendarStartDate.AddMonths(24));
        }
Ejemplo n.º 2
0
        public void AddHalfyearsTest() {
            const int yearStartMonth = April;

            var currentYear = ClockProxy.Clock.Now.Year;
            var timeCalendar = TimeCalendar.NewEmptyOffset(yearStartMonth);

            var calendarStartDate = new DateTime(currentYear, 4, 1);
            var calendarHalfyear = new HalfyearRange(currentYear, HalfyearKind.First, timeCalendar);

            calendarHalfyear.AddHalfyears(0).Should().Be(calendarHalfyear);

            var prevH1 = calendarHalfyear.AddHalfyears(-1);
            prevH1.Halfyear.Should().Be(HalfyearKind.Second);
            prevH1.BaseYear.Should().Be(currentYear - 1);
            prevH1.Start.Should().Be(calendarStartDate.AddMonths(-6));
            prevH1.End.Should().Be(calendarStartDate);

            var prevH2 = calendarHalfyear.AddHalfyears(-2);
            prevH2.Halfyear.Should().Be(HalfyearKind.First);
            prevH2.BaseYear.Should().Be(currentYear - 1);
            prevH2.Start.Should().Be(calendarStartDate.AddMonths(-12));
            prevH2.End.Should().Be(calendarStartDate.AddMonths(-6));

            var prevH3 = calendarHalfyear.AddHalfyears(-3);
            prevH3.Halfyear.Should().Be(HalfyearKind.Second);
            prevH3.BaseYear.Should().Be(currentYear - 2);
            prevH3.Start.Should().Be(calendarStartDate.AddMonths(-18));
            prevH3.End.Should().Be(calendarStartDate.AddMonths(-12));

            var futureH1 = calendarHalfyear.AddHalfyears(1);
            futureH1.Halfyear.Should().Be(HalfyearKind.Second);
            futureH1.BaseYear.Should().Be(currentYear);
            futureH1.Start.Should().Be(calendarStartDate.AddMonths(6));
            futureH1.End.Should().Be(calendarStartDate.AddMonths(12));

            var futureH2 = calendarHalfyear.AddHalfyears(2);
            futureH2.Halfyear.Should().Be(HalfyearKind.First);
            futureH2.BaseYear.Should().Be(currentYear + 1);
            futureH2.Start.Should().Be(calendarStartDate.AddMonths(12));
            futureH2.End.Should().Be(calendarStartDate.AddMonths(18));

            var futureH3 = calendarHalfyear.AddHalfyears(3);
            futureH3.Halfyear.Should().Be(HalfyearKind.Second);
            futureH3.BaseYear.Should().Be(currentYear + 1);
            futureH3.Start.Should().Be(calendarStartDate.AddMonths(18));
            futureH3.End.Should().Be(calendarStartDate.AddMonths(24));
        }