public async Task Handler_GivenExistingId_ShouldReturnAPaymentRecord() { var payment = new Payment(1, "cardholder1", "1111-2222-3333-4444", "12/22", "111", 1000); await context.Payments.AddAsync(payment); await context.CommitAsync(CancellationToken.None); var query = new GetPaymentDetailQuery { Id = payment.Id }; var sut = new GetPaymentDetailQuery.Handler(context, mapper); var result = await sut.Handle(query, CancellationToken.None); result.Should().BeOfType <PaymentDetailDto>(); result.CardHolderName.Should().Be("cardholder1"); }
public async Task Handler_GivenNotExistingId_ShouldThrowException() { var payment = new Payment(1, "cardholder1", "1111-2222-3333-4444", "12/22", "111", 1000); await context.Payments.AddAsync(payment); await context.CommitAsync(CancellationToken.None); var randomId = new Guid("0f7d4d5e-74d2-49b3-823e-f41dace79557"); var query = new GetPaymentDetailQuery { Id = randomId }; var sut = new GetPaymentDetailQuery.Handler(context, mapper); await sut.Invoking(async h => await h.Handle(query, CancellationToken.None)) .Should().ThrowAsync <EntityNotFoundException>() .WithMessage($"Entity \"Payment\" ({randomId}) was not found."); }