static void Main(string[] args) { Clock clock1 = new Clock(); TrackOrm trackOrm = new TrackOrm(); string track1Path = "Data/traintrack1.txt"; string track2Path = "Data/traintrack2.txt"; TrackDescription track1 = trackOrm.LoadTrack(track1Path); TrackDescription track2 = trackOrm.LoadTrack(track2Path); ITravelPlan travelPlan = new TravelPlanner() .AddTrack(track2) .SelectTrain(2) .StartAt(1, "10:00") .ArriveAt(2, "10:56") .StartAt(2, "12:17") .ArriveAt(3, "13:20") //.SelectTrain(3) //.StartAt(1, "12:30") //.ArriveAt(2, "14:46") .GeneratePlan(); travelPlan.Save(); // test to see if the trains would crash: // ITravelPlan travelPlanShouldCrash = // new TravelPlanner() // .AddTrack(track2) // .SelectTrain(2).StartAt(1, "10:00").ArriveAt(2, "12:12").SelectTrain(3).StartAt(2, "11:30").ArriveAt(1, "17:00").GeneratePlan(); }
private TravelPlanner GetTravelPlanner(DataCollection <Entity> rooms) { var travelPlanner = new TravelPlanner(); travelPlanner.TravelPlannerId = _opportunity.Id; travelPlanner.ConsultationReference = _opportunity.GetAttributeValue <string>(Opportunity.Name); travelPlanner.DepartureDateFrom = _opportunity.Contains(Opportunity.EarliestDepartureDate) ? GetOwrDateFormat(_opportunity.GetAttributeValue <DateTime>(Opportunity.EarliestDepartureDate)) : null; travelPlanner.DepartureDateTo = _opportunity.Contains(Opportunity.LatestDepartureDate) ? GetOwrDateFormat(_opportunity.GetAttributeValue <DateTime>(Opportunity.LatestDepartureDate)) : null; var duration = _opportunity.GetAttributeValue <OptionSetValue>(Opportunity.Duration)?.Value; if (duration != null) { travelPlanner.NumberOfNights = (NumberOfNights)duration; } travelPlanner.IncludedDestinations = GetIncludedDestinations(); travelPlanner.ExcludedDestinations = GetExcludedDestinations(); travelPlanner.DeparturePoints = new[] { _opportunity.GetAttributeValue <EntityReference>(Opportunity.DeparturePoint1)?.Name, _opportunity.GetAttributeValue <EntityReference>(Opportunity.DeparturePoint2)?.Name, _opportunity.GetAttributeValue <EntityReference>(Opportunity.DeparturePoint3)?.Name }; travelPlanner.Rooms = GetRoomsByEntity(rooms); travelPlanner.Customer = GetCustomer(); return(travelPlanner); }
public void ArriveAt_InvalidTimeFormat_Expect_Exception_Message() { TravelPlanner travelPlanner8 = new TravelPlanner(); Action action3 = () => travelPlanner8.ArriveAt(2, "jj"); Exception exception = Assert.Throws <Exception>(action3); Assert.Equal("Invalid time format", exception.Message); }
public void ArriveAt_StationNotInList_Expect_Exception_Message() { TravelPlanner travelPlanner = new TravelPlanner(); Action action = () => travelPlanner.StartAt(8, "9"); Exception exception = Assert.Throws <Exception>(action); Assert.Equal("Can´t find this station, please choose another station", exception.Message); }
public void StartAt_InvalidTimeFormat_Expect_Exception_Message() { TravelPlanner travelPlanner7 = new TravelPlanner(); Action action2 = () => travelPlanner7.StartAt(2, "hh"); Exception exception4 = Assert.Throws <Exception>(action2); Assert.Equal("Invalid time format", exception4.Message); }
public void SelectTrain_NotOperatedTrain_Expect_Exception_Message() { TravelPlanner travelPlanner = new TravelPlanner(); Action action = () => travelPlanner.SelectTrain(1); Exception exception2 = Assert.Throws <Exception>(action); Assert.Equal("This train is not running", exception2.Message); }
public void SelectTrain_TrainNotInList_Expect_Exception_Message() { TravelPlanner travelPlanner = new TravelPlanner(); Action action = () => travelPlanner.SelectTrain(7); Exception exception = Assert.Throws <Exception>(action); Assert.Equal("Can´t find this train, please choose another train", exception.Message); }
public async Task <IActionResult> GetTravelPlan([FromQuery] string from, [FromQuery] string to, [FromQuery] string start) { var schedule = GetSchedule().Result; TravelPlanner tp = new TravelPlanner(schedule); var route = tp.FindConnection(from, to, start); if (route != null) { return(Ok(route)); } else { return(NotFound()); } }
public void SetUp() { unsortedList = new List <TravelCard>(); _planner = new TravelPlanner(unsortedList); }