public async Task <ActionResult> SearchForStandardProviders(string standardId, ProviderSearchResponseCodes?statusCode, string postcode, string keywords, string ukprn, string postcodeCountry, bool?isLevyPayingEmployer) { var query = new GetStandardProvidersQuery { StandardId = standardId, Postcode = postcode, Keywords = keywords }; var response = await _mediator.Send(query); if (response.StatusCode.Equals(GetStandardProvidersResponse.ResponseCodes.NoStandardFound)) { return(new HttpNotFoundResult()); } var viewModel = _mappingService.Map <GetStandardProvidersResponse, ProviderSearchViewModel>(response); viewModel.PostUrl = Url?.Action("StandardResults", "Provider"); viewModel.HasError = statusCode.HasValue && statusCode.Value != ProviderSearchResponseCodes.Success; viewModel.ErrorMessage = ProviderSearchMapper.CreateErrorMessage(statusCode); viewModel.IsLevyPayingEmployer = isLevyPayingEmployer; viewModel.Ukprn = ukprn; return(View("SearchForProviders", viewModel)); }
public void ShouldReturnStandardDetails() { var standard = new Standard { StandardId = "2", Title = "test standard", Level = 3 }; var query = new GetStandardProvidersQuery { StandardId = standard.StandardId, Keywords = "Test keywords", Postcode = "AB1 2CD" }; _mockGetStandards.Setup(x => x.GetStandardById(standard.StandardId)).Returns(standard); var response = _sut.Handle(query, default(CancellationToken)).Result; response.StandardId.Should().Be(standard.StandardId); response.Keywords.Should().Be(query.Keywords); response.Postcode.Should().Be(query.Postcode); response.Title.Should().Be(standard.Title + ", level " + standard.Level); }