AddMonths() public method

public AddMonths ( int months ) : Month
months int
return Month
Ejemplo n.º 1
0
        public void AddMonthsTest()
        {
            DateTime now = ClockProxy.Clock.Now;

            CultureTestData cultures = new CultureTestData();
            foreach ( CultureInfo culture in cultures )
            {

                DateTime currentYearMonthStart = new DateTime( now.Year, now.Month, 1 );
                DateTime currentYearMonthEnd =
                    currentYearMonthStart.AddDays( culture.Calendar.GetDaysInMonth( currentYearMonthStart.Year,
                                                                                                                                                    currentYearMonthStart.Month ) );
                Month currentYearMonth = new Month( currentYearMonthStart,
                                                                                        TimeCalendar.New( culture, TimeSpan.Zero, TimeSpan.Zero ) );
                Assert.AreEqual( currentYearMonth.Start, currentYearMonthStart );
                Assert.AreEqual( currentYearMonth.End, currentYearMonthEnd );

                Assert.AreEqual( currentYearMonth.AddMonths( 0 ), currentYearMonth );

                DateTime previousYearMonthStart = new DateTime( now.Year - 1, now.Month, 1 );
                DateTime previousYearMonthEnd =
                    previousYearMonthStart.AddDays( culture.Calendar.GetDaysInMonth( previousYearMonthStart.Year,
                                                                                                                                                     previousYearMonthStart.Month ) );
                Month previousYearMonth = currentYearMonth.AddMonths( TimeSpec.MonthsPerYear * -1 );
                Assert.AreEqual( previousYearMonth.Start, previousYearMonthStart );
                Assert.AreEqual( previousYearMonth.End, previousYearMonthEnd );
                Assert.AreEqual( previousYearMonth.YearMonth, currentYearMonth.YearMonth );
                Assert.AreEqual( previousYearMonth.Start.Year, currentYearMonth.Start.Year - 1 );
                Assert.AreEqual( previousYearMonth.End.Year, currentYearMonth.End.Year - 1 );

                DateTime nextYearMonthStart = new DateTime( now.Year + 1, now.Month, 1 );
                DateTime nextYearMonthEnd =
                    nextYearMonthStart.AddDays( culture.Calendar.GetDaysInMonth( nextYearMonthStart.Year, nextYearMonthStart.Month ) );
                Month nextYearMonth = currentYearMonth.AddMonths( TimeSpec.MonthsPerYear );
                Assert.AreEqual( nextYearMonth.Start, nextYearMonthStart );
                Assert.AreEqual( nextYearMonth.End, nextYearMonthEnd );
                Assert.AreEqual( nextYearMonth.YearMonth, currentYearMonth.YearMonth );
                Assert.AreEqual( nextYearMonth.Start.Year, currentYearMonth.Start.Year + 1 );
                Assert.AreEqual( nextYearMonth.End.Year, currentYearMonth.End.Year + 1 );
            }
        }
Ejemplo n.º 2
0
 public void GetNextMonthTest()
 {
     Month month = new Month();
     Assert.AreEqual( month.GetNextMonth(), month.AddMonths( 1 ) );
 }
Ejemplo n.º 3
0
 public void GetPreviousMonthTest()
 {
     Month month = new Month();
     Assert.AreEqual( month.GetPreviousMonth(), month.AddMonths( -1 ) );
 }
Ejemplo n.º 4
0
        // ----------------------------------------------------------------------
        private void SelectPeriod( PeriodSelectType periodSelectType )
        {
            int offset = 0;
            switch ( periodSelectType )
            {
                case PeriodSelectType.Previous:
                    offset = -1;
                    break;
                case PeriodSelectType.Current:
                    ResetWorkingPeriod();
                    return;
                case PeriodSelectType.Next:
                    offset = 1;
                    break;
            }

            switch ( WorkingTimePeriod )
            {
                case TimePeriodMode.Year:
                    Year year = new Year( WorkingPeriodStartDate );
                    SetWorkingPeriod( year.AddYears( offset ) );
                    break;
                case TimePeriodMode.Halfyear:
                    Halfyear halfyear = new Halfyear( WorkingPeriodStartDate );
                    SetWorkingPeriod( halfyear.AddHalfyears( offset ) );
                    break;
                case TimePeriodMode.Quarter:
                    Quarter quarter = new Quarter( WorkingPeriodStartDate );
                    SetWorkingPeriod( quarter.AddQuarters( offset ) );
                    break;
                case TimePeriodMode.Month:
                    Month month = new Month( WorkingPeriodStartDate );
                    SetWorkingPeriod( month.AddMonths( offset ) );
                    break;
                case TimePeriodMode.Week:
                    Week week = new Week( WorkingPeriodStartDate );
                    SetWorkingPeriod( week.AddWeeks( offset ) );
                    break;
                case TimePeriodMode.Day:
                    Day day = new Day( WorkingPeriodStartDate );
                    SetWorkingPeriod( day.AddDays( offset ) );
                    break;
            }
        }