private async Task <AddFlightViewModel> GetAddFlightViewModel() { var airportsQuery = new AirportAll.Query(); var airports = await _mediator.Send(airportsQuery); return(new AddFlightViewModel { Airports = airports .Select(x => new SelectListItem($"{x.Name} ({x.Code})", x.Id.ToString())) .ToList() }); }
public async Task AirportAll_ValidQuery_Success() { // Arrange var query = new AirportAll.Query(); var handler = new AirportAll.Handler(_mapper, _airportRepositoryMock.Object); var expectedAirports = DomainHelpers.CreateManyValidAirports().ToList(); _airportRepositoryMock .Setup(x => x.GetAllAsync()) .ReturnsAsync(expectedAirports); // Act var result = await handler.Handle(query, CancellationToken.None); // Assert result.Count().Should().Be(expectedAirports.Count); }
private async Task <EditFlightViewModel> GetEditFlightViewModel(Guid flightId) { var airportsQuery = new AirportAll.Query(); var airports = await _mediator.Send(airportsQuery); var flightByIdQuery = new FlightById.Query(flightId); var flight = await _mediator.Send(flightByIdQuery); return(new EditFlightViewModel { FlightId = flightId, Airports = airports .Select(x => new SelectListItem($"{x.Name} ({x.Code})", x.Id.ToString())) .ToList(), DepartureAirportId = flight.DepartureAirportId, DestinationAirportId = flight.DestinationAirportId }); }
public async Task <IActionResult> Index(int page = 1) { var airportsQuery = new AirportAll.Query(); var airports = (await _mediator.Send(airportsQuery)).ToList(); var flightsQuery = new FlightAll.Query(); var flights = await _mediator.Send(flightsQuery); var onePageOfFLights = await flights .OrderByDescending(x => x.CreatedAt) .ToPagedListAsync(page, DefaultSettings.PageSize); var viewModels = onePageOfFLights.Select(flight => new FlightViewModel { Id = flight.Id, DepartureAirport = airports.SingleOrDefault(x => x.Id == flight.DepartureAirportId)?.Name, DestinationAirport = airports.SingleOrDefault(x => x.Id == flight.DestinationAirportId)?.Name, DistanceInKilometers = flight.DistanceInKilometers, FuelRequiredInLitres = flight.FuelRequiredInLitres, FlightDuration = flight.FlightDuration }); return(View(viewModels)); }