public async Task ThenItShouldReturnAnInvalidResponseIfExceptionThrown( [Frozen] Mock <IPaymentRepository> repository, [Frozen] Mock <IMapper> autoMapper, Application.Payments.GetPaymentsQuery.GetPaymentsQueryHandler sut, GetPaymentsQueryRequest request) { // Arrange var ex = new Exception(); repository.Setup(r => r.GetPayments(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <string>(), It.IsAny <int?>(), It.IsAny <int?>(), It.IsAny <long?>())) .Throws(ex); request.Period = new Data.CollectionPeriod { Id = "1920-R12", AcademicYear = 1920, Period = 12 }; // Act var actual = await sut.Handle(request).ConfigureAwait(false); // Assert actual.IsValid.Should().BeFalse(); actual.Exception.Should().Be(ex); }
public async Task ThenMatchingPaymentsShouldBeReturned( [Frozen] Mock <IPaymentRepository> repository, [Frozen] Mock <IMapper> autoMapper, Application.Payments.GetPaymentsQuery.GetPaymentsQueryHandler sut, GetPaymentsQueryRequest request, PageOfResults <PaymentEntity> paymentEntities, PageOfResults <Payment> expectedResults ) { // Arrange request.Period = new Data.CollectionPeriod { Id = "1920-R12", AcademicYear = 1920, Period = 12 }; repository.Setup(x => x.GetPayments(request.PageNumber, request.PageSize, request.EmployerAccountId, 1920, 12, request.Ukprn)).ReturnsAsync(paymentEntities); autoMapper.Setup(x => x.Map <PageOfResults <Payment> >(paymentEntities)).Returns(expectedResults); // Act var actualResult = await sut.Handle(request).ConfigureAwait(false); // Assert actualResult.IsValid.Should().BeTrue(); actualResult.Result.Should().BeSameAs(expectedResults); }