public async Task GetSearch_ReturnsSearchView() { // Arrange BreadcrumbService breadcrumb = A.Dummy<BreadcrumbService>(); ISearcher<ProducerSearchResult> producerSearcher = A.Dummy<ISearcher<ProducerSearchResult>>(); Func<IWeeeClient> weeeClient = A.Dummy<Func<IWeeeClient>>(); ProducersController controller = new ProducersController(breadcrumb, producerSearcher, weeeClient, cache); // Act ActionResult result = await controller.Search(); // Assert ViewResult viewResult = result as ViewResult; Assert.NotNull(viewResult); Assert.True(string.IsNullOrEmpty(viewResult.ViewName) || viewResult.ViewName.ToLowerInvariant() == "search"); }
public async Task PostSearch_WithInvalidModel_ReturnsSearchView() { // Arrange BreadcrumbService breadcrumb = A.Dummy<BreadcrumbService>(); ISearcher<ProducerSearchResult> producerSearcher = A.Dummy<ISearcher<ProducerSearchResult>>(); Func<IWeeeClient> weeeClient = A.Dummy<Func<IWeeeClient>>(); ProducersController controller = new ProducersController(breadcrumb, producerSearcher, weeeClient, cache); SearchViewModel viewModel = new SearchViewModel(); controller.ModelState.AddModelError("SomeProperty", "Exception"); // Act ActionResult result = await controller.Search(viewModel); // Assert ViewResult viewResult = result as ViewResult; Assert.NotNull(viewResult); Assert.True(string.IsNullOrEmpty(viewResult.ViewName) || viewResult.ViewName.ToLowerInvariant() == "search"); }
public async Task PostSearch_WithSearchTermAndNoSelectedPRN_RedirectsToSearchResultsAction() { // Arrange BreadcrumbService breadcrumb = A.Dummy<BreadcrumbService>(); ISearcher<ProducerSearchResult> producerSearcher = A.Dummy<ISearcher<ProducerSearchResult>>(); Func<IWeeeClient> weeeClient = A.Dummy<Func<IWeeeClient>>(); ProducersController controller = new ProducersController(breadcrumb, producerSearcher, weeeClient, cache); SearchViewModel viewModel = new SearchViewModel(); viewModel.SearchTerm = "testSearchTerm"; viewModel.SelectedRegistrationNumber = null; // Act ActionResult result = await controller.Search(viewModel); // Assert RedirectToRouteResult redirectResult = result as RedirectToRouteResult; Assert.NotNull(redirectResult); Assert.Equal("SearchResults", redirectResult.RouteValues["action"]); Assert.Equal("testSearchTerm", redirectResult.RouteValues["SearchTerm"]); }