public async Task PostSearch_WithSelectedOrganisationId_RedirectsToJoinOrganisationAction() { // Arrange var organisationSearcher = A.Dummy <ISearcher <OrganisationSearchResult> >(); var weeeClient = A.Dummy <Func <IWeeeClient> >(); var controller = new OrganisationRegistrationController( weeeClient, organisationSearcher, configurationService); var viewModel = new SearchViewModel { SearchTerm = "Test Company", SelectedOrganisationId = new Guid("05DF9AE8-DACE-4173-A227-16933EB5D5F8") }; // Act var result = await controller.Search(viewModel); // Assert var redirectResult = result as RedirectToRouteResult; Assert.NotNull(redirectResult); Assert.Equal("JoinOrganisation", redirectResult.RouteValues["action"]); Assert.Equal(new Guid("05DF9AE8-DACE-4173-A227-16933EB5D5F8"), redirectResult.RouteValues["OrganisationId"]); }
public async Task PostSearch_WithSearchTermAndNoSelectedOrganisationId_RedirectsToSearchResultsAction() { // Arrange var organisationSearcher = A.Dummy <ISearcher <OrganisationSearchResult> >(); var weeeClient = A.Dummy <Func <IWeeeClient> >(); var controller = new OrganisationRegistrationController( weeeClient, organisationSearcher, configurationService); var viewModel = new SearchViewModel { SearchTerm = "testSearchTerm", SelectedOrganisationId = null }; // Act var result = await controller.Search(viewModel); // Assert var redirectResult = result as RedirectToRouteResult; Assert.NotNull(redirectResult); Assert.Equal("SearchResults", redirectResult.RouteValues["action"]); Assert.Equal("testSearchTerm", redirectResult.RouteValues["SearchTerm"]); }
public async Task PostSearch_WithInvalidModel_ReturnsSearchView() { // Arrange var organisationSearcher = A.Dummy <ISearcher <OrganisationSearchResult> >(); var weeeClient = A.Dummy <Func <IWeeeClient> >(); var controller = new OrganisationRegistrationController( weeeClient, organisationSearcher, configurationService); var viewModel = new SearchViewModel(); controller.ModelState.AddModelError("SomeProperty", "Exception"); // Act var result = await controller.Search(viewModel); // Assert var viewResult = result as ViewResult; Assert.NotNull(viewResult); Assert.True(string.IsNullOrEmpty(viewResult.ViewName) || viewResult.ViewName.ToLowerInvariant() == "search"); }
public async Task GetSearch_UserHasOrganisations_ShowPerformAnotherActivityLinkIsTrue() { // Arrange var weeeClient = A.Fake <IWeeeClient>(); A.CallTo(() => weeeClient.SendAsync(A <string> ._, A <GetUserOrganisationsByStatus> ._)) .Returns(new List <OrganisationUserData> { new OrganisationUserData(), new OrganisationUserData() }); var organisationSearcher = A.Dummy <ISearcher <OrganisationSearchResult> >(); var controller = new OrganisationRegistrationController( () => weeeClient, organisationSearcher, configurationService); // Act var result = await controller.Search(); // Assert var model = ((ViewResult)result).Model as SearchViewModel; Assert.NotNull(model); Assert.True(model.ShowPerformAnotherActivityLink); }
public async Task GetSearch_ReturnsSearchView() { // Arrange var organisationSearcher = A.Dummy <ISearcher <OrganisationSearchResult> >(); var weeeClient = A.Dummy <Func <IWeeeClient> >(); var controller = new OrganisationRegistrationController( weeeClient, organisationSearcher, configurationService); // Act var result = await controller.Search(); // Assert var viewResult = result as ViewResult; Assert.NotNull(viewResult); Assert.True(string.IsNullOrEmpty(viewResult.ViewName) || viewResult.ViewName.ToLowerInvariant() == "search"); }
public async Task PostSearch_WithSelectedOrganisationId_RedirectsToJoinOrganisationAction() { // Arrange ISearcher<OrganisationSearchResult> organisationSearcher = A.Dummy<ISearcher<OrganisationSearchResult>>(); Func<IWeeeClient> weeeClient = A.Dummy<Func<IWeeeClient>>(); OrganisationRegistrationController controller = new OrganisationRegistrationController( weeeClient, organisationSearcher); SearchViewModel viewModel = new SearchViewModel(); viewModel.SearchTerm = "Test Company"; viewModel.SelectedOrganisationId = new Guid("05DF9AE8-DACE-4173-A227-16933EB5D5F8"); // Act ActionResult result = await controller.Search(viewModel); // Assert RedirectToRouteResult redirectResult = result as RedirectToRouteResult; Assert.NotNull(redirectResult); Assert.Equal("JoinOrganisation", redirectResult.RouteValues["action"]); Assert.Equal(new Guid("05DF9AE8-DACE-4173-A227-16933EB5D5F8"), redirectResult.RouteValues["OrganisationId"]); }
public async Task PostSearch_WithSearchTermAndNoSelectedOrganisationId_RedirectsToSearchResultsAction() { // Arrange ISearcher<OrganisationSearchResult> organisationSearcher = A.Dummy<ISearcher<OrganisationSearchResult>>(); Func<IWeeeClient> weeeClient = A.Dummy<Func<IWeeeClient>>(); OrganisationRegistrationController controller = new OrganisationRegistrationController( weeeClient, organisationSearcher); SearchViewModel viewModel = new SearchViewModel(); viewModel.SearchTerm = "testSearchTerm"; viewModel.SelectedOrganisationId = 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"]); }
public async Task PostSearch_WithInvalidModel_ReturnsSearchView() { // Arrange ISearcher<OrganisationSearchResult> organisationSearcher = A.Dummy<ISearcher<OrganisationSearchResult>>(); Func<IWeeeClient> weeeClient = A.Dummy<Func<IWeeeClient>>(); OrganisationRegistrationController controller = new OrganisationRegistrationController( weeeClient, organisationSearcher); 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 GetSearch_ReturnsSearchView() { // Arrange ISearcher<OrganisationSearchResult> organisationSearcher = A.Dummy<ISearcher<OrganisationSearchResult>>(); Func<IWeeeClient> weeeClient = A.Dummy<Func<IWeeeClient>>(); OrganisationRegistrationController controller = new OrganisationRegistrationController( weeeClient, organisationSearcher); // 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 GetSearch_UserHasOrganisations_ShowPerformAnotherActivityLinkIsTrue() { // Arrange IWeeeClient weeeClient = A.Fake<IWeeeClient>(); A.CallTo(() => weeeClient.SendAsync(A<string>._, A<GetUserOrganisationsByStatus>._)) .Returns(new List<OrganisationUserData> { new OrganisationUserData(), new OrganisationUserData() }); ISearcher<OrganisationSearchResult> organisationSearcher = A.Dummy<ISearcher<OrganisationSearchResult>>(); OrganisationRegistrationController controller = new OrganisationRegistrationController( () => weeeClient, organisationSearcher); // Act ActionResult result = await controller.Search(); // Assert var model = ((ViewResult)result).Model as SearchViewModel; Assert.NotNull(model); Assert.True(model.ShowPerformAnotherActivityLink); }