public AddQuarters ( int count ) : |
||
count | int | |
Результат |
public void AddQuartersTest() { const int yearStartMonth = April; var currentYear = ClockProxy.Clock.Now.Year; var timeCalendar = TimeCalendar.New(TimeSpan.Zero, TimeSpan.Zero, yearStartMonth); var calendarStartDate = new DateTime(currentYear, 4, 1); var calendarQuarter = new QuarterRange(currentYear, QuarterKind.First, timeCalendar); Assert.AreEqual(calendarQuarter.AddQuarters(0), calendarQuarter); var prevQ1 = calendarQuarter.AddQuarters(-1); prevQ1.Quarter.Should().Be(QuarterKind.Fourth); prevQ1.BaseYear.Should().Be(currentYear - 1); prevQ1.Start.Should().Be(calendarStartDate.AddMonths(-3)); prevQ1.End.Should().Be(calendarStartDate); var prevQ2 = calendarQuarter.AddQuarters(-2); prevQ2.Quarter.Should().Be(QuarterKind.Third); prevQ2.BaseYear.Should().Be(currentYear - 1); prevQ2.Start.Should().Be(calendarStartDate.AddMonths(-6)); prevQ2.End.Should().Be(calendarStartDate.AddMonths(-3)); var prevQ3 = calendarQuarter.AddQuarters(-3); prevQ3.Quarter.Should().Be(QuarterKind.Second); prevQ3.BaseYear.Should().Be(currentYear - 1); prevQ3.Start.Should().Be(calendarStartDate.AddMonths(-9)); prevQ3.End.Should().Be(calendarStartDate.AddMonths(-6)); var prevQ4 = calendarQuarter.AddQuarters(-4); prevQ4.Quarter.Should().Be(QuarterKind.First); prevQ4.BaseYear.Should().Be(currentYear - 1); prevQ4.Start.Should().Be(calendarStartDate.AddMonths(-12)); prevQ4.End.Should().Be(calendarStartDate.AddMonths(-9)); var prevQ5 = calendarQuarter.AddQuarters(-5); prevQ5.Quarter.Should().Be(QuarterKind.Fourth); prevQ5.BaseYear.Should().Be(currentYear - 2); prevQ5.Start.Should().Be(calendarStartDate.AddMonths(-15)); prevQ5.End.Should().Be(calendarStartDate.AddMonths(-12)); var futureQ1 = calendarQuarter.AddQuarters(1); futureQ1.Quarter.Should().Be(QuarterKind.Second); futureQ1.BaseYear.Should().Be(currentYear); futureQ1.Start.Should().Be(calendarStartDate.AddMonths(3)); futureQ1.End.Should().Be(calendarStartDate.AddMonths(6)); var futureQ2 = calendarQuarter.AddQuarters(2); futureQ2.Quarter.Should().Be(QuarterKind.Third); futureQ2.BaseYear.Should().Be(currentYear); futureQ2.Start.Should().Be(calendarStartDate.AddMonths(6)); futureQ2.End.Should().Be(calendarStartDate.AddMonths(9)); var futureQ3 = calendarQuarter.AddQuarters(3); futureQ3.Quarter.Should().Be(QuarterKind.Fourth); futureQ3.BaseYear.Should().Be(currentYear); futureQ3.Start.Should().Be(calendarStartDate.AddMonths(9)); futureQ3.End.Should().Be(calendarStartDate.AddMonths(12)); var futureQ4 = calendarQuarter.AddQuarters(4); futureQ4.Quarter.Should().Be(QuarterKind.First); futureQ4.BaseYear.Should().Be(currentYear + 1); futureQ4.Start.Should().Be(calendarStartDate.AddMonths(12)); futureQ4.End.Should().Be(calendarStartDate.AddMonths(15)); var futureQ5 = calendarQuarter.AddQuarters(5); futureQ5.Quarter.Should().Be(QuarterKind.Second); futureQ5.BaseYear.Should().Be(currentYear + 1); futureQ5.Start.Should().Be(calendarStartDate.AddMonths(15)); futureQ5.End.Should().Be(calendarStartDate.AddMonths(18)); }
public void AddQuartersTest() { const int yearStartMonth = April; var currentYear = ClockProxy.Clock.Now.Year; var timeCalendar = TimeCalendar.New(TimeSpan.Zero, TimeSpan.Zero, yearStartMonth); var calendarStartDate = new DateTime(currentYear, 4, 1); var calendarQuarter = new QuarterRange(currentYear, QuarterKind.First, timeCalendar); Assert.AreEqual(calendarQuarter.AddQuarters(0), calendarQuarter); var prevQ1 = calendarQuarter.AddQuarters(-1); prevQ1.Quarter.Should().Be(QuarterKind.Fourth); prevQ1.BaseYear.Should().Be(currentYear - 1); prevQ1.Start.Should().Be(calendarStartDate.AddMonths(-3)); prevQ1.End.Should().Be(calendarStartDate); var prevQ2 = calendarQuarter.AddQuarters(-2); prevQ2.Quarter.Should().Be(QuarterKind.Third); prevQ2.BaseYear.Should().Be(currentYear - 1); prevQ2.Start.Should().Be(calendarStartDate.AddMonths(-6)); prevQ2.End.Should().Be(calendarStartDate.AddMonths(-3)); var prevQ3 = calendarQuarter.AddQuarters(-3); prevQ3.Quarter.Should().Be(QuarterKind.Second); prevQ3.BaseYear.Should().Be(currentYear - 1); prevQ3.Start.Should().Be(calendarStartDate.AddMonths(-9)); prevQ3.End.Should().Be(calendarStartDate.AddMonths(-6)); var prevQ4 = calendarQuarter.AddQuarters(-4); prevQ4.Quarter.Should().Be(QuarterKind.First); prevQ4.BaseYear.Should().Be(currentYear - 1); prevQ4.Start.Should().Be(calendarStartDate.AddMonths(-12)); prevQ4.End.Should().Be(calendarStartDate.AddMonths(-9)); var prevQ5 = calendarQuarter.AddQuarters(-5); prevQ5.Quarter.Should().Be(QuarterKind.Fourth); prevQ5.BaseYear.Should().Be(currentYear - 2); prevQ5.Start.Should().Be(calendarStartDate.AddMonths(-15)); prevQ5.End.Should().Be(calendarStartDate.AddMonths(-12)); var futureQ1 = calendarQuarter.AddQuarters(1); futureQ1.Quarter.Should().Be(QuarterKind.Second); futureQ1.BaseYear.Should().Be(currentYear); futureQ1.Start.Should().Be(calendarStartDate.AddMonths(3)); futureQ1.End.Should().Be(calendarStartDate.AddMonths(6)); var futureQ2 = calendarQuarter.AddQuarters(2); futureQ2.Quarter.Should().Be(QuarterKind.Third); futureQ2.BaseYear.Should().Be(currentYear); futureQ2.Start.Should().Be(calendarStartDate.AddMonths(6)); futureQ2.End.Should().Be(calendarStartDate.AddMonths(9)); var futureQ3 = calendarQuarter.AddQuarters(3); futureQ3.Quarter.Should().Be(QuarterKind.Fourth); futureQ3.BaseYear.Should().Be(currentYear); futureQ3.Start.Should().Be(calendarStartDate.AddMonths(9)); futureQ3.End.Should().Be(calendarStartDate.AddMonths(12)); var futureQ4 = calendarQuarter.AddQuarters(4); futureQ4.Quarter.Should().Be(QuarterKind.First); futureQ4.BaseYear.Should().Be(currentYear + 1); futureQ4.Start.Should().Be(calendarStartDate.AddMonths(12)); futureQ4.End.Should().Be(calendarStartDate.AddMonths(15)); var futureQ5 = calendarQuarter.AddQuarters(5); futureQ5.Quarter.Should().Be(QuarterKind.Second); futureQ5.BaseYear.Should().Be(currentYear + 1); futureQ5.Start.Should().Be(calendarStartDate.AddMonths(15)); futureQ5.End.Should().Be(calendarStartDate.AddMonths(18)); }