/// <summary> /// Create a <see cref="LocalDate"/> in the Wondrous calendar, treating 0 /// as the month containing Ayyam-i-Ha. /// </summary> /// <param name="year">Year in the Wondrous calendar</param> /// <param name="month">Month (use 0 for Ayyam-i-Ha)</param> /// <param name="day">Day in month</param> private static LocalDate CreateWondrousDate(int year, int month, int day) { if (month == AyyamiHaMonth) { Preconditions.CheckArgumentRange(nameof(day), day, 1, WondrousYearMonthDayCalculator.GetDaysInAyyamiHa(year)); // Move Ayyam-i-Ha days to fall after the last day of month 18. month = WondrousYearMonthDayCalculator.Month18; day += WondrousYearMonthDayCalculator.DaysInMonth; } return(new LocalDate(year, month, day, CalendarSystem.Wondrous)); }
public void DayOfYear(int wYear, int wMonth, int wDay, int dayOfYear) { var wondrous = new WondrousYearMonthDayCalculator(); Assert.AreEqual(dayOfYear, wondrous.GetDayOfYear(CreateWondrousDate(wYear, wMonth, wDay).YearMonthDay)); }
public void DaysInAyyamiHa(int wYear, int days) { Assert.AreEqual(days, WondrousYearMonthDayCalculator.GetDaysInAyyamiHa(wYear)); }