Ejemplo n.º 1
0
        public void NewShoreTest_GetFlightsFromApi_ObtieneUnVueloDeLaApi_DevuelveVuelos()
        {
            string FlightOrigin      = "BOG";
            string FlightDestination = "PEI";
            string FlightDate        = "2020-11-20";

            var response = _vivaAirApiImplementation.GetFlightsFromApi(FlightOrigin,
                                                                       FlightDestination, FlightDate).Result.First();

            VivaAirApiResponse respuesta = new VivaAirApiResponse()
            {
                DepartureStation = "BOG",
                DepartureDate    = new DateTime(2020, 11, 20, 11, 00, 00),
                ArrivalStation   = "PEI",
                Currency         = "COP",
                Price            = (decimal)598814.0000,
                FlightNumber     = "1244"
            };

            Assert.AreEqual(response.ArrivalStation, respuesta.ArrivalStation);
            Assert.AreEqual(response.DepartureStation, respuesta.DepartureStation);
            Assert.AreEqual(response.DepartureDate, respuesta.DepartureDate);
            Assert.AreEqual(response.Currency, respuesta.Currency);
            Assert.AreEqual(response.Price, respuesta.Price);
            Assert.AreEqual(response.FlightNumber, respuesta.FlightNumber);
        }
Ejemplo n.º 2
0
        public async Task <FlightModel> SaveFlight(VivaAirApiResponse flight)
        {
            try
            {
                FlightModel newFlight = new FlightModel()
                {
                    DepartureStation = flight.DepartureStation,
                    DepartureDate    = flight.DepartureDate,
                    ArrivalStation   = flight.ArrivalStation,
                    Currency         = flight.Currency,
                    Price            = flight.Price,
                    Transport        = new TransportModel()
                    {
                        FlightNumber = flight.FlightNumber
                    }
                };
                db.Flights.Add(newFlight);
                await db.SaveChangesAsync();

                return(newFlight);
            }
            catch
            {
                return(null);
            }
        }
Ejemplo n.º 3
0
        public async Task <FlightModel> SaveFlight([FromBody] VivaAirApiResponse flight)
        {
            try
            {
                _logger.LogInformation("The data to be inserted in the DB are:"
                                       + "\n" + "Origen: " + flight.DepartureStation
                                       + "\n" + "Destino: " + flight.ArrivalStation
                                       + "\n" + "Fecha: " + flight.DepartureDate
                                       + "\n" + "Currency: " + flight.Currency
                                       + "\n" + "Precio: " + flight.Price
                                       + "\n" + "Numero de vuelo: " + flight.FlightNumber);

                FlightModel model = await _dataBase.SaveFlight(flight);

                _logger.LogInformation("The flight has been saved successfully");
                return(model);
            }
            catch (Exception ex)
            {
                _logger.LogError("Flight cannot be saved, data received :"
                                 + "\n" + "Origen: " + flight.DepartureStation
                                 + "\n" + "Destino: " + flight.ArrivalStation
                                 + "\n" + "Fecha: " + flight.DepartureDate
                                 + "\n" + "Currency: " + flight.Currency
                                 + "\n" + "Precio: " + flight.Price
                                 + "\n" + "Numero de vuelo: " + flight.FlightNumber);
                throw new Exception("Mensaje de error " + ex.Message);
            }
        }