public void Instance_Is_Object() { //Arrange var type = typeof(object); //Act var airportCoordinates = new AirportCoordinates(); //Assert Assert.IsInstanceOf(type, airportCoordinates); }
public static double GetDistanceInMiles(this AirportCoordinates airportCoordinates) { var rFromLatitude = Math.PI * airportCoordinates.From.Latitude / 180; var rToLatitude = Math.PI * airportCoordinates.To.Latitude / 180; var theta = airportCoordinates.From.Longitude - airportCoordinates.To.Longitude; var rTheta = Math.PI * theta / 180; var distInMiles = Math.Sin(rFromLatitude) * Math.Sin(rToLatitude) + Math.Cos(rFromLatitude) * Math.Cos(rToLatitude) * Math.Cos(rTheta); distInMiles = Math.Acos(distInMiles); distInMiles = distInMiles * 180 / Math.PI; distInMiles = distInMiles * 60 * 1.1515; return(distInMiles); }
public async Task <double> Calculate(AirportCodes airportCodes) { var from = await _iataGeoClient.GetAsync <AirportResponse>(Endpoints.GetCoordinates + $"/{airportCodes.From}"); if (!from.IsSuccessStatusCode) { throw new AirportNotFoundException(); } var to = await _iataGeoClient.GetAsync <AirportResponse>(Endpoints.GetCoordinates + $"/{airportCodes.To}"); if (!to.IsSuccessStatusCode) { throw new AirportNotFoundException(); } var airportCoordinates = new AirportCoordinates { From = new Airport(from.Response), To = new Airport(to.Response) }; return(airportCoordinates.GetDistanceInMiles()); }