public void CreateHolidaysTest() { IHolidaysFactory sut = new DayOfMonthHolidaysFactory(6, DayOfWeek.Monday, 2); var expected = new List <DateTime>() { new DateTime(2013, 6, 10), new DateTime(2014, 6, 9), new DateTime(2015, 6, 8), }; Assert.That(sut.CreateHolidays(new DateTime(2012, 12, 28), new DateTime(2016, 3, 20)), Is.EquivalentTo(expected)); }
public void BusinessDayCounterIntegrationWithAnnualHolidaysTests() { var newYear = new FirstWeekdayHolidayShiftingDecorator(new FixedDateHolidaysFactory(1, 1)); var christmas = new FixedDateHolidaysFactory(12, 25); var boxing = new FixedDateHolidaysFactory(12, 26); var queenDay = new DayOfMonthHolidaysFactory(6, DayOfWeek.Monday, 2); var aggregator = new HolidaysAggregator(new List <IHolidaysFactory>() { newYear, christmas, boxing, queenDay }); var counter = new BusinessDayCounter(); Assert.That(counter.BusinessDaysBetweenTwoDates(new DateTime(2016, 12, 20), new DateTime(2018, 2, 1), aggregator), Is.EqualTo(291 - 6)); }