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(); }