public async Task And_Account_Id_Greater_Than_0_Then_Valid(
            GetReservationsQuery query,
            GetReservationsQueryValidator validator)
        {
            var result = await validator.ValidateAsync(query);

            result.IsValid().Should().BeTrue();
        }
Esempio n. 2
0
        public async Task <List <FlightReservationModel> > Reservation()
        {
            List <FlightReservationModel> reservations;
            GetReservationsQuery          getReservationsQuery = new GetReservationsQuery();

            reservations = await _mediator.Send(getReservationsQuery);

            return(reservations);
        }
        public async Task And_Account_Id_Is_Default_Value_Then_Invalid(
            GetReservationsQueryValidator validator)
        {
            var query = new GetReservationsQuery();

            var result = await validator.ValidateAsync(query);

            result.IsValid().Should().BeFalse();
            result.ValidationDictionary.Should().ContainKey(nameof(GetReservationsQuery.AccountId));
        }
Esempio n. 4
0
        public async Task <List <FlightReservationModel> > Handle(GetReservationsQuery request, CancellationToken cancellationToken)
        {
            var reservations = await _context.Set <AircraftReservation>().ProjectTo <FlightReservationModel>(_mapper.ConfigurationProvider).ToListAsync();

            foreach (var r in reservations)
            {
                var pilot = _context.Set <Pilot>().Find(r.PilotId);
                r.UserId    = pilot == null ? string.Empty : pilot.UserId;
                r.FirstName = pilot.FirstName; r.LastName = pilot.LastName;
            }
            return(reservations);
        }
        public async Task And_Account_Id_Less_Than_0_Then_Invalid(
            long accountId,
            GetReservationsQueryValidator validator)
        {
            var query = new GetReservationsQuery {
                AccountId = -accountId
            };

            var result = await validator.ValidateAsync(query);

            result.IsValid().Should().BeFalse();
            result.ValidationDictionary.Should().ContainKey(nameof(GetReservationsQuery.AccountId));
        }
        public async Task Then_Gets_Reservations_From_Service(
            long accountId,
            [Frozen] ValidationResult validationResult,
            [Frozen] Mock <IReservationService> mockService,
            GetReservationsQueryHandler handler)
        {
            var query = new GetReservationsQuery {
                AccountId = accountId
            };

            validationResult.ValidationDictionary.Clear();

            await handler.Handle(query, CancellationToken.None);

            mockService.Verify(client => client.GetReservations(accountId),
                               Times.Once);
        }
        public async Task Then_Returns_Mapped_Reservations(
            long accountId,
            List <Reservation> serviceReservations,
            [Frozen] ValidationResult validationResult,
            [Frozen] Mock <IReservationService> mockService,
            GetReservationsQueryHandler handler)
        {
            var query = new GetReservationsQuery {
                AccountId = accountId
            };

            validationResult.ValidationDictionary.Clear();
            mockService
            .Setup(client => client.GetReservations(accountId))
            .ReturnsAsync(serviceReservations);

            var result = await handler.Handle(query, CancellationToken.None);

            result.Reservations.Should().BeEquivalentTo(serviceReservations);
        }
        public void And_Invalid_Then_Throws_ValidationException(
            long accountId,
            string propertyName,
            ValidationResult validationResult,
            [Frozen] Mock <IValidator <GetReservationsQuery> > mockValidator,
            GetReservationsQueryHandler handler)
        {
            var query = new GetReservationsQuery {
                AccountId = accountId
            };

            validationResult.AddError(propertyName);
            mockValidator
            .Setup(validator => validator.ValidateAsync(It.IsAny <GetReservationsQuery>()))
            .ReturnsAsync(validationResult);

            Func <Task> act = async() => { await handler.Handle(query, CancellationToken.None); };

            act.Should().ThrowExactly <ValidationException>()
            .Which.ValidationResult.MemberNames.First(c => c.StartsWith(propertyName)).Should().NotBeNullOrEmpty();
        }
 public async Task <IEnumerable <Reservation> > Handle(GetReservationsQuery request, CancellationToken cancellationToken)
 {
     return(await _repository.GetAllAsync());
 }
Esempio n. 10
0
 public async Task <ActionResult <ReservationsListVm> > GetAll([FromQuery] GetReservationsQuery query)
 {
     return(Ok(await Mediator.Send(query)));
 }