public void Test_DateRangeWithOffSets(DateRangeTestCaseWithOffSet dateRangeTestCase) { //---------------Set up test pack------------------- var dateTimeNowFake = new DateTimeNowFixed(dateRangeTestCase.CurrectDate); var optionsConverter = new DateRangeOptionsConverter(dateTimeNowFake); optionsConverter.MidnightOffset = dateRangeTestCase.MidNightOffset; optionsConverter.MonthStartOffset = dateRangeTestCase.MonthOffSet; optionsConverter.WeekStartOffset = dateRangeTestCase.WeekOffSet; optionsConverter.YearStartOffset = dateRangeTestCase.YearOffSet; //--------------Assert PreConditions---------------- //---------------Execute Test ---------------------- DateRange dateRange = optionsConverter.ConvertDateRange(dateRangeTestCase.DateRangeOptions); //---------------Test Result ----------------------- dateRangeTestCase.ShouldHaveStartAndEndDate(dateRange); }