public async Task And_Any_Other_Exception_Then_Returns_Internal_Server_Error( string query, double minMatch, [Frozen] Mock <IMediator> mockMediator, [Greedy] AddressesController controller) { mockMediator .Setup(mediator => mediator.Send( It.IsAny <GetAddressesQuery>(), It.IsAny <CancellationToken>())) .Throws <Exception>(); var controllerResult = await controller.Index(query, minMatch) as StatusCodeResult; controllerResult.StatusCode.Should().Be((int)HttpStatusCode.InternalServerError); }
public async Task And_ArgumentOutOfRange_Exception_Then_Returns_Bad_Request( string query, double minMatch, [Frozen] Mock <IMediator> mockMediator, [Greedy] AddressesController controller) { mockMediator .Setup(mediator => mediator.Send( It.IsAny <GetAddressesQuery>(), It.IsAny <CancellationToken>())) .Throws <ArgumentOutOfRangeException>(); var controllerResult = await controller.Index(query, minMatch) as StatusCodeResult; controllerResult.StatusCode.Should().Be((int)HttpStatusCode.BadRequest); }
public async Task Index_Get() { // Arrange var testUserId = "testUserId"; var mockRepo = new Mock <IAddressesRepository>(); mockRepo.Setup(repo => repo.GetAddressListAsync(testUserId)) .ReturnsAsync((List <Address>)null); var controller = new AddressesController(mockRepo.Object); // Act var result = await controller.Index(); // Assert var viewResult = Assert.IsType <ViewResult>(result); //var model = Assert.IsAssignableFrom<IEnumerable<Address>>(viewResult.ViewData.Model); Assert.Null(viewResult.ViewData.Model); Assert.Null(viewResult.ViewName); }
public async Task Then_No_Results_From_Mediator_Returns_Empty_Ok_Response( string query, double minMatch, [Frozen] Mock <IMediator> mockMediator, [Greedy] AddressesController controller) { mockMediator .Setup(mediator => mediator.Send( It.IsAny <GetAddressesQuery>(), It.IsAny <CancellationToken>())) .ReturnsAsync(new GetAddressesQueryResult { Addresses = new List <SuggestedAddress>() }); var controllerResult = await controller.Index(query, minMatch) as ObjectResult; var model = controllerResult.Value as GetAddressesListResponse; controllerResult.StatusCode.Should().Be((int)HttpStatusCode.OK); model.Addresses.Should().BeEmpty(); }
public async Task Then_Gets_Locations_List_From_Mediator( string query, double minMatch, GetAddressesQueryResult queryResult, [Frozen] Mock <IMediator> mockMediator, [Greedy] AddressesController controller) { mockMediator .Setup(mediator => mediator.Send( It.Is <GetAddressesQuery>(request => request.Query == query && request.MinMatch.Equals(minMatch)), It.IsAny <CancellationToken>())) .ReturnsAsync(queryResult); var controllerResult = await controller.Index(query, minMatch) as ObjectResult; var model = controllerResult.Value as GetAddressesListResponse; controllerResult.StatusCode.Should().Be((int)HttpStatusCode.OK); model.Addresses.Should().BeEquivalentTo(queryResult.Addresses, options => options.ExcludingMissingMembers()); }
public void Index_Return_NotNull() { var indexView = addressController.Index() as ViewResult; Assert.IsNotNull(indexView); }