public void TimeofDayModelExtensionsClass_ToTimeOfDayMethod_ThrowsFormatException_IfParameterConsistsOfNonNumericString() { TimeOfDaySpecification timeOfDaySpecification = new TimeOfDaySpecification(TimeOfDaySpecification.TimeOfDaySpecificationKind.NonNumericValue); TimeOfDayModel testParam = timeOfDaySpecification.Model; _ = testParam.ToTimeOfDay(); Assert.Fail(); }
public void TimeOfDayModelExtensionsClass_ToTimeOfDayMethod_ThrowsFormatException_IfParameterHasTimePropertyThatIsSolelyWhitespace() { TimeOfDaySpecification testParamSpec = new TimeOfDaySpecification(TimeOfDaySpecification.TimeOfDaySpecificationKind.WhitespaceValue); TimeOfDayModel testParam = testParamSpec.Model; _ = testParam.ToTimeOfDay(); Assert.Fail(); }
public void TrainTimeModelExtensionsClass_ToTrainTimeMethod_ThrowsFormatException_IfFirstParameterHasAtPropertyWithTimePropertyThatIsNonNumericString() { TrainTimeModel testParam0 = GetTestObject(); TimeOfDaySpecification testParamSpec = new TimeOfDaySpecification(TimeOfDaySpecification.TimeOfDaySpecificationKind.NonNumericValue); testParam0.At = testParamSpec.Model; Dictionary <string, Note> testParam1 = new Dictionary <string, Note>(); _ = testParam0.ToTrainTime(testParam1); Assert.Fail(); }
public void TimeOfDayModelExtensionsClass_ToTimeOfDayMethod_ReturnsObjectWithCorrectValue_IfParameterConsistsOfNumberInRangeWithNoColons() { TimeOfDaySpecification testParamSpec = new TimeOfDaySpecification(TimeOfDaySpecification.TimeOfDaySpecificationKind.HoursOnly); TimeOfDayModel testParam = testParamSpec.Model; TimeOfDay testOutput = testParam.ToTimeOfDay(); Assert.AreEqual(testParamSpec.Hours.Value * 3600, testOutput.AbsoluteSeconds); Assert.AreEqual(testParamSpec.Hours.Value, testOutput.Hours24); Assert.AreEqual(0, testOutput.Minutes); Assert.AreEqual(0, testOutput.Seconds); }
public void TimeOfDayModelExtensionsClass_ToTimeOfDayMethod_ReturnsObjectWithCorrectValue_IfParameterConsistsOfTwoNumbersInRangeSeparatedByColon() { TimeOfDaySpecification testParamSpec = new TimeOfDaySpecification(TimeOfDaySpecification.TimeOfDaySpecificationKind.HoursAndMinutes); int expectedSeconds = testParamSpec.Hours.Value * 3600 + testParamSpec.Minutes.Value * 60; TimeOfDayModel testParam = testParamSpec.Model; TimeOfDay testOutput = testParam.ToTimeOfDay(); Assert.AreEqual(expectedSeconds, testOutput.AbsoluteSeconds); Assert.AreEqual(testParamSpec.Hours.Value % 24, testOutput.Hours24); Assert.AreEqual(testParamSpec.Minutes.Value % 60, testOutput.Minutes); Assert.AreEqual(0, testOutput.Seconds); }
public void TrainTimeModelExtensionsClass_ToTrainTimeMethod_ReturnsObjectWithCorrectTimeProperty_IfFirstParameterHasAtPropertyWithTimePropertyThatIsMoreThanThreeNumbersInRangeSeparatedByColons() { TrainTimeModel testParam0 = GetTestObject(); TimeOfDaySpecification testParamSpec = new TimeOfDaySpecification(TimeOfDaySpecification.TimeOfDaySpecificationKind.HoursMinutesSecondsAndMore); testParam0.At = testParamSpec.Model; Dictionary <string, Note> testParam1 = GetNoteDictionaryWithContents(testParam0.FootnoteIds); TrainTime testOutput = testParam0.ToTrainTime(testParam1); Assert.AreEqual(testParamSpec.Hours.Value, testOutput.Time.Hours24); Assert.AreEqual(testParamSpec.Minutes.Value, testOutput.Time.Minutes); Assert.AreEqual(testParamSpec.Seconds.Value, testOutput.Time.Seconds); }
public void SignalboxHoursModelExtensionsClass_ToSignalboxHoursMethod_ReturnsObjectWithEndTimePropertyWithCorrectValue_IfFirstParameterHasFinishTimePropertyThatHasTimePropertyThatConsistsOfMoreThanThreeNumbersInRangeSeparatedByColons() { SignalboxHoursModel testParam0 = GetTestObject(); TimeOfDaySpecification finishTimeSpecification = new TimeOfDaySpecification(TimeOfDaySpecification.TimeOfDaySpecificationKind.HoursMinutesSecondsAndMore); testParam0.FinishTime = finishTimeSpecification.Model; IDictionary <string, Signalbox> testParam1 = GetSignalboxCollectionWithItem(testParam0.SignalboxId); SignalboxHours testOutput = testParam0.ToSignalboxHours(testParam1); Assert.AreEqual(finishTimeSpecification.Hours.Value, testOutput.EndTime.Hours24); Assert.AreEqual(finishTimeSpecification.Minutes.Value, testOutput.EndTime.Minutes); Assert.AreEqual(finishTimeSpecification.Seconds.Value, testOutput.EndTime.Seconds); }
public void SignalboxHoursModelExtensionsClass_ToSignalboxHoursMethod_ReturnsObjectWithStartTimePropertyWithCorrectValue_IfFirstParameterHasStartTimePropertyThatHasTimePropertyThatConsistsOfNumberInRangeWithNoColons() { SignalboxHoursModel testParam0 = GetTestObject(); TimeOfDaySpecification startTimeSpecification = new TimeOfDaySpecification(TimeOfDaySpecification.TimeOfDaySpecificationKind.HoursOnly); testParam0.StartTime = startTimeSpecification.Model; IDictionary <string, Signalbox> testParam1 = GetSignalboxCollectionWithItem(testParam0.SignalboxId); SignalboxHours testOutput = testParam0.ToSignalboxHours(testParam1); Assert.AreEqual(startTimeSpecification.Hours.Value, testOutput.StartTime.Hours24); Assert.AreEqual(0, testOutput.StartTime.Minutes); Assert.AreEqual(0, testOutput.StartTime.Seconds); }
private static TrainTimeModel GetTestObject() { TimeOfDaySpecification timeSpec = new TimeOfDaySpecification(TimeOfDaySpecification.TimeOfDaySpecificationKind.HoursMinutesSeconds); TrainTimeModel model = new TrainTimeModel { At = timeSpec.Model }; int noteCount = _rnd.Next(5); for (int i = 0; i < noteCount; ++i) { string noteId; do { noteId = _rnd.NextHexString(8); } while (model.FootnoteIds.Contains(noteId)); model.FootnoteIds.Add(noteId); } return(model); }
public void SignalboxHoursSetModelExtensionsClass_ToSignalboxHoursSetMethod_ReturnsObjectWithHoursPropertyContainingElementsWithCorrectEndTimeProperty_IfFirstParameterHasSignalboxesPropertyContainingElementsWithFinishTimePropertiesThatHaveTimePropertyThatIsMoreThanThreeNumbersWithinRangeSeparatedByColons() { SignalboxHoursSetModel testParam0 = GetTestObject(); IDictionary <string, Signalbox> testParam1 = GetSignalboxCollectionWithItems(testParam0.Signalboxes.Select(s => s.SignalboxId)); IEnumerable <SignalboxHoursSet> testParam2 = GetExistingSets(); Dictionary <string, TimeOfDaySpecification> timeSpecs = new Dictionary <string, TimeOfDaySpecification>(); foreach (SignalboxHoursModel box in testParam0.Signalboxes) { TimeOfDaySpecification timeSpec = new TimeOfDaySpecification(TimeOfDaySpecification.TimeOfDaySpecificationKind.HoursMinutesSecondsAndMore); box.FinishTime = timeSpec.Model; timeSpecs.Add(box.SignalboxId, timeSpec); } SignalboxHoursSet testOutput = testParam0.ToSignalboxHoursSet(testParam1, testParam2); foreach (string id in testParam0.Signalboxes.Select(s => s.SignalboxId)) { Assert.AreEqual(timeSpecs[id].Hours.Value, testOutput.Hours[id].EndTime.Hours24); Assert.AreEqual(timeSpecs[id].Minutes.Value, testOutput.Hours[id].EndTime.Minutes); Assert.AreEqual(timeSpecs[id].Seconds.Value, testOutput.Hours[id].EndTime.Seconds); } }