public void ThrowArgumentOutOfRangeExceptionWhenTimespanIsLongerThan24Hours(TimeSpan timeSpan) { RelativeDay relativeDay = RelativeDay.NextDay; DateTime referenceDateTime = new DateTime(2019, 08, 31, 18, 30, 34); Assert.Throws <ArgumentOutOfRangeException>(() => new OpenWeatherTimeSpecification(relativeDay, timeSpan, referenceDateTime)); }
public void InitializeComparisonDateTimeWithNonDefaultValue() { RelativeDay relativeDay = RelativeDay.NextDay; TimeSpan timeSpan = new TimeSpan(8, 30, 0); DateTime referenceDateTime = new DateTime(2019, 08, 31, 18, 30, 34); var SpecificationUnderTest = new OpenWeatherTimeSpecification(relativeDay, timeSpan, referenceDateTime); Assert.NotEqual(new DateTime(), SpecificationUnderTest.ComparisonDateTime); }
public void CreateComparisonDateTimeWithExpectedValues() { RelativeDay relativeDay = RelativeDay.NextDay; TimeSpan timeSpan = new TimeSpan(8, 30, 0); DateTime referenceDateTime = new DateTime(2019, 08, 31, 18, 30, 34); DateTime expectedComparisonDateTime = new DateTime(2019, 9, 1, 8, 30, 0); var SpecificationUnderTest = new OpenWeatherTimeSpecification(relativeDay, timeSpan, referenceDateTime); Assert.Equal(expectedComparisonDateTime, SpecificationUnderTest.ComparisonDateTime); }
public OpenWeatherTimeSpecification(RelativeDay relativeDay, TimeSpan timeSpan, DateTime referenceDateTime) { ValidateTimeSpan(timeSpan); ComparisonDateTime = new DateTime( referenceDateTime.Year, referenceDateTime.Month, referenceDateTime.Day, timeSpan.Hours, timeSpan.Minutes, timeSpan.Seconds) .AddDays((double)relativeDay); }
public OpenWeatherDaySpecification(RelativeDay day, DateTime reference) { ComparisonDateTime = reference.AddDays((double)day); }