public static IEnumerable <FlightViewModel> CalculateData(IEnumerable <FlightViewModel> flightViewModel) { return(flightViewModel.Select(f => { f.FlightDistance = FlightBusiness.CalculateDistance(new GeoCoordinate(f.From.Latitude, f.From.Longitude), new GeoCoordinate(f.To.Latitude, f.To.Longitude)); f.FlightTime = ((TimeSpan)(f.Arrival - f.Departure)).TotalHours; f.FuelConsumption = FlightBusiness.CalculateFuelConsumption(f.FlightDistance, f.FlightTime); return f; })); }
public async Task IfFligthServiceReturnFalseThatBusinessToo() { _flightServiceMock.Setup(f => f.AddAsync(It.IsAny <FlightDto>())).Returns(Task.FromResult(false)); _business = new FlightBusiness(_flightServiceMock.Object, _aircraftServiceMock.Object, _airportServiceMock.Object); var flightDto = new FlightDto { DepartureAirportId = 1, DestinationAirportId = 2, AircraftId = 1 }; var result = await _business.AddSync(flightDto); result.Should().Be(false); _flightServiceMock.Verify(f => f.AddAsync(flightDto), Times.Once); }
public void Init() { _flightServiceMock = new Mock <IFlightService>(); _aircraftServiceMock = new Mock <IAircraftService>(); _airportServiceMock = new Mock <IAirportService>(); _airportServiceMock.Setup(a => a.GetAsync(1)) .Returns(Task.FromResult(_charlesDeGaulleAirport)); _airportServiceMock.Setup(a => a.GetAsync(2)) .Returns(Task.FromResult(_orlyAirport)); _aircraftServiceMock.Setup(a => a.GetAsync(1)) .Returns(Task.FromResult(_aircraftBoeing)); _flightServiceMock.Setup(f => f.AddAsync(It.IsAny <FlightDto>())).Returns(Task.FromResult(true)); _flightServiceMock.Setup(f => f.UpdateAsync(It.IsAny <UpdateFlightDto>())).Returns(Task.FromResult(true)); _business = new FlightBusiness(_flightServiceMock.Object, _aircraftServiceMock.Object, _airportServiceMock.Object); }
public void Init() { _airportBusiness = new Mock <IAirportBusiness>(); _flightService = new Mock <IFlightService>(); _tUIAssessmentDAL = new Mock <ITUIAssessmentDAL>(); _airportsList = new List <AirportModel> { new AirportModel { Id = 1, Code = "CDG", Name = "Charles De Gaulle Airport", TakeOffEffort = 900.0, Coordinates = new CoordinatesModel(49.012780, 2.550000) }, new AirportModel { Id = 2, Code = "JFK", Name = "John Fitzgerald Kennedy Airport", TakeOffEffort = 600.0, Coordinates = new CoordinatesModel(40.6398, -73.7789) }, new AirportModel { Id = 3, Code = "LAX", Name = "Los Angeles International Airport", TakeOffEffort = 720.0, Coordinates = new CoordinatesModel(34.052230, -118.243680) }, new AirportModel { Id = 4, Code = "HDN", Name = "Tokyo-Haneda International Airport", TakeOffEffort = 1163.0, Coordinates = new CoordinatesModel(35.552260, 139.779690) }, new AirportModel { Id = 5, Code = "CPH", Name = "Copenhagen International Airport", TakeOffEffort = 637.0, Coordinates = new CoordinatesModel(55.623564, 12.660777) } }; _expectingFlights = new List <FlightModel> { new FlightModel { ID = 1, DepartureAirport = _airportsList[0], ArrivalAirport = _airportsList[1], Distance = 6666.66, Carburant = 42.0, Duration = 12.0 }, new FlightModel { ID = 2, DepartureAirport = _airportsList[1], ArrivalAirport = _airportsList[2], Distance = 6666.66, Carburant = 42.0, Duration = 12.0 }, new FlightModel { ID = 3, DepartureAirport = _airportsList[3], ArrivalAirport = _airportsList[4], Distance = 6666.66, Carburant = 42.0, Duration = 12.0 }, new FlightModel { ID = 4, DepartureAirport = _airportsList[1], ArrivalAirport = _airportsList[4], Distance = 6666.66, Carburant = 42.0, Duration = 12.0 }, new FlightModel { ID = 5, DepartureAirport = _airportsList[0], ArrivalAirport = _airportsList[3], Distance = 6666.66, Carburant = 42.0, Duration = 12.0 } }; _airportEntities = new List <AirportEntity> { new AirportEntity { Id = 1, Code = "CDG", Name = "Paris-Charles De Gaulle", Latitude = 49.009642, Longitude = 2.547885 }, new AirportEntity { Id = 2, Code = "MXP", Name = "Milan-Malpensa", Latitude = 45.629646, Longitude = 8.724174 }, new AirportEntity { Id = 3, Code = "LHR", Name = "London-Heathrow", Latitude = 51.472401, Longitude = -0.467262 }, new AirportEntity { Id = 4, Code = "AMS", Name = "Amsterdam-Schipol", Latitude = 52.31488, Longitude = 4.757767 }, new AirportEntity { Id = 5, Code = "FRA", Name = "Frankfurt-Airport", Latitude = 50.035313, Longitude = 8.559723 }, new AirportEntity { Id = 6, Code = "JFK", Name = "New-York-John F. Kennedy", Latitude = 40.64444, Longitude = -73.778 }, new AirportEntity { Id = 7, Code = "LAX", Name = "Los Angeles International Airport", Latitude = 33.941154, Longitude = -118.409447 }, new AirportEntity { Id = 8, Code = "ATL", Name = "Atlanta-Hartsfield-Jackson", Latitude = 33.635899, Longitude = -84.428719 }, new AirportEntity { Id = 9, Code = "YUL", Name = "Montreal-Trudeau", Latitude = 45.470604, Longitude = -73.744354 }, new AirportEntity { Id = 10, Code = "YVR", Name = "Vancouver Airport", Latitude = 49.192398, Longitude = -123.179596 }, new AirportEntity { Id = 11, Code = "EZE", Name = "Buenos Aires-Pistarini", Latitude = -34.812111, Longitude = -58.539619 }, new AirportEntity { Id = 12, Code = "SJO", Name = "San Jose Airport", Latitude = 9.957228, Longitude = -84.139236 }, new AirportEntity { Id = 13, Code = "GIG", Name = "Rio De Janeiro International Airport", Latitude = -22.910809, Longitude = -43.163223 }, new AirportEntity { Id = 14, Code = "RUH", Name = "Riyad King Kahild International Airport", Latitude = 24.954332, Longitude = 46.700993 }, new AirportEntity { Id = 15, Code = "DOH", Name = "Doha International Airport", Latitude = 25.261309, Longitude = 51.562614 }, new AirportEntity { Id = 16, Code = "PVG", Name = "Shanghai Pudong International Airport", Latitude = 31.144997, Longitude = 121.811371 }, new AirportEntity { Id = 17, Code = "ICN", Name = "Seoul Incheon Airport", Latitude = 37.471603, Longitude = 126.455666 }, new AirportEntity { Id = 18, Code = "HND", Name = "Tokyo Haneda Airport", Latitude = 35.554993, Longitude = 139.780258 }, new AirportEntity { Id = 19, Code = "SYD", Name = "Sydney Airport", Latitude = -33.94997, Longitude = 151.178482 }, new AirportEntity { Id = 20, Code = "JNB", Name = "Johanesburg- OR Tambo International Airport", Latitude = -26.123140, Longitude = 28.243365 } }; _flightEntities = new List <FlightEntity> { new FlightEntity { Id = 1, DepartureAirportId = 1, ArrivalAirportId = 2, Distance = 6666.66, FuelQuantity = 42.0, TimeOfFlight = 12.0 }, new FlightEntity { Id = 2, DepartureAirportId = 2, ArrivalAirportId = 3, Distance = 6666.66, FuelQuantity = 42.0, TimeOfFlight = 12.0 }, new FlightEntity { Id = 3, DepartureAirportId = 4, ArrivalAirportId = 5, Distance = 6666.66, FuelQuantity = 42.0, TimeOfFlight = 12.0 }, new FlightEntity { Id = 4, DepartureAirportId = 2, ArrivalAirportId = 5, Distance = 6666.66, FuelQuantity = 42.0, TimeOfFlight = 12.0 }, new FlightEntity { Id = 5, DepartureAirportId = 1, ArrivalAirportId = 4, Distance = 6666.66, FuelQuantity = 42.0, TimeOfFlight = 12.0 } }; _flightEntityUpdated = new FlightEntity { Id = 1, DepartureAirportId = 1, ArrivalAirportId = 2, Distance = 4206.66, FuelQuantity = 42.0, TimeOfFlight = 12.0 }; #region mocks setup _airportBusiness.Setup(ab => ab.GetAirportById(1)).Returns(_airportsList[0]); _airportBusiness.Setup(ab => ab.GetAirportById(2)).Returns(_airportsList[1]); _airportBusiness.Setup(ab => ab.GetAirportById(3)).Returns(_airportsList[2]); _airportBusiness.Setup(ab => ab.GetAirportById(4)).Returns(_airportsList[3]); _airportBusiness.Setup(ab => ab.GetAirportById(5)).Returns(_airportsList[4]); _flightService.Setup(fs => fs.CalculateDistanceWithHaversineFormulae(It.IsAny <CoordinatesModel>(), It.IsAny <CoordinatesModel>())).Returns(6666.66); _flightService.Setup(fs => fs.CalculateFuelVolumeForFlight(It.IsAny <double>(), It.IsAny <double>(), It.IsAny <double>())).Returns(42.0); _flightService.Setup(fs => fs.CalculateTimeOfFlight(It.IsAny <double>(), It.IsAny <double>())).Returns(12.0); _tUIAssessmentDAL.Setup(dal => dal.SaveFlightEntity(It.IsAny <FlightEntity>())).Returns(new FlightEntity()); _tUIAssessmentDAL.Setup(dal => dal.GetAirportEntities()).Returns(_airportEntities); _tUIAssessmentDAL.Setup(dal => dal.GetFlightEntities()).Returns(_flightEntities); _tUIAssessmentDAL.Setup(dal => dal.UpdateFlightEntity(It.IsAny <FlightEntity>())).Returns(_flightEntityUpdated); _tUIAssessmentDAL.Setup(dal => dal.RemoveFlightEntityByID(It.IsAny <int>())).Returns(true); #endregion _flightBusiness = new FlightBusiness(_airportBusiness.Object, _flightService.Object, _tUIAssessmentDAL.Object); }