public void RoutePunctualityPercentage_Returning56Percent() { var result = PunctualityConverter.RoutePunctualityPercentage(_routes[0]); Assert.AreEqual("56%", result); }
public async Task <BusStopsBusStopDto> GetBusStopIncludeAllAsync(int id) { var busStop = await _repository.GetBusStopIncludeAllAsync(id); var punctualityPercentage = PunctualityConverter.BusStopPunctualityPercentage(busStop); var busStopDto = new BusStopsBusStopDto() { PunctualityPercentage = punctualityPercentage }; return(_mapper.Map <BusStop, BusStopsBusStopDto>(busStop, busStopDto)); }
public void BusStopPunctualityHourMode_WhenTracesExist_ReturnsModeAsTimespan() { _busStops[0].BusStopTraces.Add(new BusStopTrace //two traces at 11:55 { Id = 10000, Hour = new TimeSpan(11, 55, 0), BusStopId = 1 }); var result = PunctualityConverter.BusStopPunctualityHourMode(_busStops[0]); Assert.IsInstanceOf <TimeSpan>(result); Assert.AreEqual(new TimeSpan(11, 55, 0), result); }
public async Task <IEnumerable <RoutesRouteDto> > GetAllRoutesIncludeAllAsync() //Todo { var routes = await _repository.GetAllRoutesIncludeAllAsync(); var routeDtoList = new List <RoutesRouteDto>(); var result = _mapper.Map <IEnumerable <Route>, IEnumerable <RoutesRouteDto> >(routes).ToList(); for (int i = 0; i < result.Count(); i++) { result[i].PunctualityPercentage = PunctualityConverter.RoutePunctualityPercentage(routes.ElementAt(i)); } return(result); }
public async Task <IEnumerable <RoutesRouteDto> > FindRoutesAsync(string startCity, string destinationCity, string days = null, TimeSpan hourFrom = default(TimeSpan), TimeSpan hourTo = default(TimeSpan), DateTime date = default(DateTime)) { var routes = await _repository.FindRoutesAsync(startCity, destinationCity, days, hourFrom, hourTo, date); var result = _mapper.Map <IEnumerable <Route>, IEnumerable <RoutesRouteDto> >(routes).ToList(); for (int i = 0; i < result.Count(); i++) { result[i].PunctualityPercentage = PunctualityConverter.RoutePunctualityPercentage(routes.ElementAt(i)); } return(result); }
public async Task <RoutesRouteDto> GetRouteIncludeAllAsync(int id) { var route = await _repository.GetRouteIncludeAllAsync(id); var punctuality = PunctualityConverter.RoutePunctualityPercentage(route); var routeDto = new RoutesRouteDto { PunctualityPercentage = punctuality }; var result = _mapper.Map <Route, RoutesRouteDto>(route, routeDto); SetPunctualityForRoute(route, ref result); return(result); }
public void BusStopPunctualityHourAvgBeforeAvgAfterTime_WhenBusStopHaveNotTraces_ReturnsTuple00() { var busStop1 = new BusStop() { BusStopTraces = new List <BusStopTrace>() }; var busStop2 = new BusStop() { BusStopTraces = new List <BusStopTrace>() }; var result1 = PunctualityConverter.BusStopPunctualityHourAvgBeforeAvgAfterTime(busStop1); var result2 = PunctualityConverter.BusStopPunctualityHourAvgBeforeAvgAfterTime(busStop2); Assert.AreEqual((0, 0), result1); Assert.AreEqual((0, 0), result2); }
private static void SetPunctualityForRoute(Route route, ref RoutesRouteDto routeDto) { for (int i = 0; i < route.BusStops.Count; i++) { routeDto.BusStops.ElementAt(i).PunctualityPercentage = PunctualityConverter.BusStopPunctualityPercentage(route.BusStops.ElementAt(i)); routeDto.BusStops.ElementAt(i).PunctualityMode = PunctualityConverter.BusStopPunctualityHourMode(route.BusStops.ElementAt(i)).ToString(@"hh\:mm"); var avgTuple = PunctualityConverter .BusStopPunctualityHourAvgBeforeAvgAfterTime(route.BusStops.ElementAt(i)); routeDto.BusStops.ElementAt(i).PunctualityAvgBeforeTime = avgTuple.avgTimeBefore.ToString(); routeDto.BusStops.ElementAt(i).PunctualityAvgAfterTime = avgTuple.avgTimeAfter.ToString(); } var avgPunctuality = PunctualityConverter.RoutePunctualityHourAvgBeforeAvgAfterTime(route); routeDto.PunctualityAvgBeforeTime = avgPunctuality.avgTimeBefore.ToString(); routeDto.PunctualityAvgAfterTime = avgPunctuality.avgTimeAfter.ToString(); }
public void RoutePunctualityHourAvgBeforeAvgAfterTime_WhenRouteHaveNotTraces_ReturnsTuple00() { var route = new Route { BusStops = new List <BusStop> { new BusStop { BusStopTraces = new List <BusStopTrace>() }, new BusStop { BusStopTraces = new List <BusStopTrace>() } } }; var result = PunctualityConverter.RoutePunctualityHourAvgBeforeAvgAfterTime(route); Assert.AreEqual((0, 0), result); }
public void BusStopPunctualityHourAvgBeforeAvgAfterTime_WhenHaveOnlyAfterTraces_ReturnsTuple30() { var busStop = new BusStop { Hour = new TimeSpan(12, 0, 0), BusStopTraces = new List <BusStopTrace> { new BusStopTrace { Hour = new TimeSpan(11, 58, 0) }, new BusStopTrace { Hour = new TimeSpan(11, 55, 0) } } }; var result = PunctualityConverter.BusStopPunctualityHourAvgBeforeAvgAfterTime(busStop); Assert.AreEqual((3, 0), result); }
public void BusStopPunctualityHourMode_WhenTracesDontExistOrNull_ReturnBusStopHour() { var busStop1 = new BusStop() { Id = 1, Address = "Address", Hour = new TimeSpan(12, 0, 0) }; var busStop2 = new BusStop() { Id = 1, Address = "Address", BusStopTraces = new List <BusStopTrace>(), Hour = new TimeSpan(14, 0, 0) }; var result1 = PunctualityConverter.BusStopPunctualityHourMode(busStop1); var result2 = PunctualityConverter.BusStopPunctualityHourMode(busStop2); Assert.AreEqual(new TimeSpan(12, 0, 0), result1); Assert.AreEqual(new TimeSpan(14, 0, 0), result2); }
public void CalculateDelay_WhenBusIsLate_ReturningMinus7() { var busStop = new BusStop { Hour = new TimeSpan(12, 0, 0), BusStopTraces = new List <BusStopTrace> { new BusStopTrace { Hour = new TimeSpan(11, 50, 0) }, new BusStopTrace { Hour = new TimeSpan(11, 55, 0) } } }; var result = PunctualityConverter.CalculateBusStopDelay(busStop); Assert.AreEqual(-7, result); }
public void ConvertToAverageArrivedHour_FromTwoTraces_Returning2() { var busStop = new BusStop { Hour = new TimeSpan(12, 0, 0), BusStopTraces = new List <BusStopTrace> { new BusStopTrace { Hour = new TimeSpan(12, 10, 0) }, new BusStopTrace { Hour = new TimeSpan(12, 5, 0) } } }; var result = PunctualityConverter.BusStopAverageArrivedHour(busStop); Assert.AreEqual(new TimeSpan(12, 7, 30), result); }
public void BusStopPunctualityPercentage_WenBusStopHavntTraces_Returning0Percent() { var busStop1 = new BusStop { Id = 1, Address = "Address", Label = "Label" }; var busStop2 = new BusStop { Id = 1, Address = "Address", Label = "Label", BusStopTraces = new List <BusStopTrace>() }; //var result1 = PunctualityConverter.BusStopPunctualityPercentage(busStop1); var result2 = PunctualityConverter.BusStopPunctualityPercentage(busStop2); //Assert.AreEqual("0%", result1); Assert.AreEqual("0%", result2); }
public void BusStopPunctualityHourAvgBeforeAvgAfterTime_WhenBusStopHaveTraces_ReturnsTuple() { var result = PunctualityConverter.BusStopPunctualityHourAvgBeforeAvgAfterTime(_busStops[0]); Assert.AreEqual((4, 9), result); }
public void RoutePunctualityHourAvgBeforeAvgAfterTime_WhenRouteHaveTraces_ReturnsTuple() { var result = PunctualityConverter.RoutePunctualityHourAvgBeforeAvgAfterTime(_routes[0]); Assert.AreEqual((4, 8), result); }
public void BusStopPunctualityPercentage_FromBusStops0_Returning50Percent() { var result = PunctualityConverter.BusStopPunctualityPercentage(_busStops[0]); Assert.AreEqual("50%", result); }
public void ConvertToAverageArrivedHour_FromBusStops0_Returning12_28() { var result = PunctualityConverter.BusStopAverageArrivedHour(_busStops[0]); Assert.AreEqual(new TimeSpan(12, 28, 0), result); }