public async Task ListAsync_WithNoSorting_SendsQueryAndReturnsOk() { // Arrange IEnumerable <ViewDriverDto> expectedResult = new ViewDriverDto[] { }; var mediator = new Mock <IMediator>(); mediator .Setup(m => m.Send(It.Is <ListDriversQuery>(q => q.OrderBy == ListDriversQuery.Sorting.FirstName), It.IsAny <CancellationToken>())) .Returns(Task.FromResult(expectedResult)) .Verifiable(); var controller = new DriversController(mediator.Object); // Act var response = await controller.ListAsync(""); // Assert mediator.Verify(); Assert.IsType <OkObjectResult>(response.Result); Assert.Equal(expectedResult, ((OkObjectResult)response.Result).Value); }
public async Task GetAsync_WithNonExistingGuid_SendsQueryAndReturnsNotFound() { // Arrange var guid = Guid.NewGuid(); var expectedResult = new ViewDriverDto { }; var mediator = new Mock <IMediator>(); mediator .Setup(m => m.Send(It.Is <GetDriverQuery>(q => q.DriverId == guid), It.IsAny <CancellationToken>())) .Returns(Task.FromException <ViewDriverDto>(new NotFoundException("Just not found"))) .Verifiable(); var controller = new DriversController(mediator.Object); // Act var response = await controller.GetAsync(guid); // Assert mediator.Verify(); Assert.IsType <NotFoundObjectResult>(response.Result); Assert.Equal("Just not found", ((NotFoundObjectResult)response.Result).Value); }