public void DetailShouldReturnViewResultWhenStandardSearchIsSuccessful() { var searchCriteria = new ApprenticeshipProviderDetailQuery { StandardCode = "1", LocationId = 2, UkPrn = 3 }; var stubSearchResponse = Task.FromResult(new ApprenticeshipProviderDetailResponse()); var stubProviderViewModel = new ApprenticeshipDetailsViewModel { ApprenticeshipType = ApprenticeshipTrainingType.Standard }; var httpContextMock = new Mock <HttpContextBase>(); var httpRequestMock = new Mock <HttpRequestBase>(); httpRequestMock.Setup(m => m.UrlReferrer).Returns(new Uri("http://www.helloworld.com")); httpContextMock.SetupGet(c => c.Request).Returns(httpRequestMock.Object); var urlHelperMock = new Mock <UrlHelper>(); urlHelperMock.Setup(m => m.Action(It.IsAny <string>(), It.IsAny <string>())).Returns(string.Empty); ProviderController controller = new ProviderControllerBuilder() .SetupMediator((x => x.Send(It.IsAny <ApprenticeshipProviderDetailQuery>(), default(CancellationToken))), stubSearchResponse) .SetupMappingService(x => x.Map(It.IsAny <ApprenticeshipProviderDetailResponse>(), It.IsAny <Action <IMappingOperationOptions <ApprenticeshipProviderDetailResponse, ApprenticeshipDetailsViewModel> > >()), stubProviderViewModel) .WithUrl(urlHelperMock.Object); var result = controller.Detail(searchCriteria).Result; result.Should().BeOfType <ViewResult>(); var viewResult = (ViewResult)result; viewResult.Model.Should().Be(stubProviderViewModel); }
public async Task SearchResultsShouldReturnViewResultWhenFrameworkSearchIsSuccessful() { var stubSearchResponse = new ProviderSearchResponse { Success = true, StatusCode = ProviderSearchResponseCodes.Success }; var stubViewModel = new ProviderFrameworkSearchResultViewModel { Title = "title1" }; ProviderController controller = new ProviderControllerBuilder().SetupMappingService( x => x.Map(It.IsAny <ProviderSearchResponse>(), It.IsAny <Action <IMappingOperationOptions <ProviderSearchResponse, ProviderFrameworkSearchResultViewModel> > >()), stubViewModel).SetupMediator(x => x.Send <ProviderSearchResponse>(It.IsAny <ProviderSearchQuery>(), default(CancellationToken)), Task.FromResult(stubSearchResponse)); var searchCriteria = new ProviderSearchQuery { ApprenticeshipId = "123", PostCode = "AB3 1SD" }; var result = await controller.FrameworkResults(searchCriteria); result.Should().BeOfType <ViewResult>(); var viewResult = (ViewResult)result; viewResult.Model.Should().Be(stubViewModel); }
public async Task DetailShouldReturnNotFoundResultIfApprenticeshipProviderNotFound() { var searchCriteria = new ApprenticeshipProviderDetailQuery(); var stubSearchResponse = Task.FromResult(new ApprenticeshipProviderDetailResponse { StatusCode = ApprenticeshipProviderDetailResponse.ResponseCodes.ApprenticeshipProviderNotFound }); ProviderController controller = new ProviderControllerBuilder() .SetupMediator(x => x.Send(It.IsAny <ApprenticeshipProviderDetailQuery>(), default(CancellationToken)), stubSearchResponse); var result = controller.Detail(searchCriteria).Result; result.Should().BeOfType <HttpStatusCodeResult>(); var responseResult = (HttpStatusCodeResult)result; responseResult.StatusCode.Should().Be((int)HttpStatusCode.NotFound); }
public async Task SearchResultsShouldReturnNotFoundStatusCodeIfTheStandardIsNotFound() { var stubSearchResponse = new ProviderSearchResponse { Success = true, StatusCode = ProviderSearchResponseCodes.ApprenticeshipNotFound }; var stubViewModel = new ProviderStandardSearchResultViewModel(); ProviderController controller = new ProviderControllerBuilder() .SetupMappingService(x => x.Map <ProviderSearchResponse, ProviderStandardSearchResultViewModel>(It.IsAny <ProviderSearchResponse>()), stubViewModel) .SetupMediator(x => x.Send <ProviderSearchResponse>(It.IsAny <ProviderSearchQuery>(), default(CancellationToken)), Task.FromResult(stubSearchResponse)); var result = await controller.StandardResults(new ProviderSearchQuery()); result.Should().BeOfType <HttpStatusCodeResult>(); var viewResult = (HttpStatusCodeResult)result; viewResult.StatusCode.Should().Be((int)HttpStatusCode.NotFound); }
public async Task SearchResultsShouldReturnViewResultWhenStandardSearchIsSuccessful() { var stubSearchResponse = new ProviderSearchResponse { Success = true }; var stubViewModel = new ProviderStandardSearchResultViewModel(); ProviderController controller = new ProviderControllerBuilder() .SetupMappingService(x => x.Map(It.IsAny <ProviderSearchResponse>(), It.IsAny <Action <IMappingOperationOptions <ProviderSearchResponse, ProviderStandardSearchResultViewModel> > >()), stubViewModel) .SetupMediator(x => x.Send <ProviderSearchResponse>(It.IsAny <ProviderSearchQuery>(), default(CancellationToken)), Task.FromResult(stubSearchResponse)); var result = await controller.StandardResults(new ProviderSearchQuery()); result.Should().BeOfType <ViewResult>(); var viewResult = (ViewResult)result; viewResult.Model.Should().Be(stubViewModel); }
public async Task FrameworkSearchResultsShouldReturnBadRequestStatusCodeIfApprenticeshipIdIsInvalid() { var stubSearchResponse = new ProviderSearchResponse { Success = true, StatusCode = ProviderSearchResponseCodes.InvalidApprenticeshipId }; var stubViewModel = new ProviderFrameworkSearchResultViewModel(); ProviderController controller = new ProviderControllerBuilder() .SetupMappingService(x => x.Map <ProviderSearchResponse, ProviderFrameworkSearchResultViewModel>(It.IsAny <ProviderSearchResponse>()), stubViewModel) .SetupMediator(x => x.Send <ProviderSearchResponse>(It.IsAny <ProviderSearchQuery>(), default(CancellationToken)), Task.FromResult(stubSearchResponse)); var result = await controller.FrameworkResults(new ProviderSearchQuery()); result.Should().BeOfType <HttpStatusCodeResult>(); var viewResult = (HttpStatusCodeResult)result; viewResult.StatusCode.Should().Be((int)HttpStatusCode.BadRequest); }
public async Task SearchResultsShouldRedirectToSearchEntryPageIfPostCodeIsNotSet() { var stubSearchResponse = new ProviderSearchResponse { Success = true, StatusCode = ProviderSearchResponseCodes.PostCodeInvalidFormat }; var mockUrlHelper = new Mock <UrlHelper>(); mockUrlHelper.Setup(x => x.Action("SearchForStandardProviders", "Apprenticeship", It.IsAny <object>())).Returns("someurl"); var stubViewModel = new ProviderStandardSearchResultViewModel(); ProviderController controller = new ProviderControllerBuilder() .SetupMappingService(x => x.Map <ProviderSearchResponse, ProviderStandardSearchResultViewModel>(It.IsAny <ProviderSearchResponse>()), stubViewModel) .SetupMediator(x => x.Send <ProviderSearchResponse>(It.IsAny <ProviderSearchQuery>(), default(CancellationToken)), Task.FromResult(stubSearchResponse)) .WithUrl(mockUrlHelper.Object); var result = await controller.StandardResults(new ProviderSearchQuery()); result.Should().BeOfType <RedirectResult>(); var viewResult = (RedirectResult)result; viewResult.Url.Should().Be("someurl"); }
public async Task SearchResultsShouldRedirectToLatPageIfParameterExtendsUpperBound() { var stubSearchResponse = new ProviderSearchResponse { Success = true, StatusCode = ProviderSearchResponseCodes.PageNumberOutOfUpperBound }; var mockUrlHelper = new Mock <UrlHelper>(); mockUrlHelper.Setup(x => x.Action("StandardResults", "Provider", It.IsAny <RouteValueDictionary>())).Returns("someurl"); var stubViewModel = new ProviderStandardSearchResultViewModel(); ProviderController controller = new ProviderControllerBuilder() .SetupMappingService(x => x.Map <ProviderSearchResponse, ProviderStandardSearchResultViewModel>(It.IsAny <ProviderSearchResponse>()), stubViewModel) .SetupMediator(x => x.Send <ProviderSearchResponse>(It.IsAny <ProviderSearchQuery>(), default(CancellationToken)), Task.FromResult(stubSearchResponse)) .WithUrl(mockUrlHelper.Object); var result = await controller.StandardResults(new ProviderSearchQuery()); result.Should().BeOfType <RedirectResult>(); var viewResult = (RedirectResult)result; viewResult.Url.Should().Be("someurl"); }