public void Duplicate_charity_number_check_throws_exception() { _repository.Setup(x => x.DuplicateCharityNumberExists(It.IsAny <Guid>(), It.IsAny <string>())) .Throws(new Exception("Unit test exception")); var logger = new Mock <ILogger <DuplicateCharityNumberCheckHandler> >(); var handler = new DuplicateCharityNumberCheckHandler(logger.Object, _repository.Object); var request = new DuplicateCharityNumberCheckRequest() { CharityNumber = "10001000", OrganisationId = Guid.NewGuid() }; Func <Task> result = async() => await handler.Handle(request, new CancellationToken()); result.Should().Throw <ApplicationException>(); }
public void Duplicate_charity_number_check_returns_no_match() { var response = new DuplicateCheckResponse { DuplicateFound = false, DuplicateOrganisationName = null }; _repository.Setup(x => x.DuplicateCharityNumberExists(It.IsAny <Guid>(), It.IsAny <string>())).ReturnsAsync(response); var logger = new Mock <ILogger <DuplicateCharityNumberCheckHandler> >(); var handler = new DuplicateCharityNumberCheckHandler(logger.Object, _repository.Object); var request = new DuplicateCharityNumberCheckRequest() { CharityNumber = "10001000", OrganisationId = Guid.NewGuid() }; var result = handler.Handle(request, new CancellationToken()).GetAwaiter().GetResult(); result.DuplicateFound.Should().BeFalse(); }
public async Task <IActionResult> CharityNumber(DuplicateCharityNumberCheckRequest request) { return(Ok(await _mediator.Send(request))); }