public void AccountsLinkWithNullAccountId_ReturnRouteLink() { var options = Substitute.For <IOptionsMonitor <MaPageConfiguration> >(); var config = new MaPageConfiguration { Routes = new MaRoutes { Accounts = new System.Collections.Generic.Dictionary <string, string> { { "Routename", "ProperLink/{0}" } } } }; options.CurrentValue.Returns(config); var linkGenerator = Substitute.For <ILinkGenerator>(); linkGenerator.AccountsLink(Arg.Any <string>()).Returns("ProperLink"); linkGenerator.AccountsLink("").Returns("RouteLink"); var urlBuilder = new UrlBuilder(Substitute.For <ILogger <UrlBuilder> >(), options, linkGenerator); Assert.Equal("RouteLink", urlBuilder.AccountsLink()); //Assert.Equal("RouteLink", urlBuilder.AccountsLink("Routename", "")); //Assert.Equal("RouteLink", urlBuilder.AccountsLink("Routename")); //Assert.Equal("RouteLink", urlBuilder.AccountsLink("Routename", null)); Assert.Equal("ProperLink", urlBuilder.AccountsLink("Routename", "ABC123")); }
public async Task <IActionResult> Index(GetProvidersForFeedbackRequest request, int pageIndex = PagingState.DefaultPageIndex) { var idClaim = HttpContext.User.FindFirst(System.Security.Claims.ClaimTypes.NameIdentifier); var pagingState = await _sessionService.Get <PagingState>($"{idClaim.Value}_PagingState"); if (null == pagingState) { pagingState = new PagingState(); } pagingState.PageIndex = pageIndex; await _sessionService.Set($"{idClaim.Value}_PagingState", pagingState); var model = await _trainingProviderService.GetTrainingProviderSearchViewModel( request.EncodedAccountId, pagingState.SelectedProviderName, pagingState.SelectedFeedbackStatus, pagingState.PageSize, pagingState.PageIndex, pagingState.SortColumn, pagingState.SortDirection); model.ChangePageAction = nameof(Index); ViewBag.EmployerAccountsHomeUrl = _urlBuilder.AccountsLink("AccountsHome", request.EncodedAccountId); await _sessionService.Set($"{idClaim.Value}_ProviderCount", model.TrainingProviders.TotalRecordCount); return(View(model)); }
public async Task <IActionResult> Index(string encodedAccountId) { var idClaim = HttpContext.User.FindFirst(System.Security.Claims.ClaimTypes.NameIdentifier); var surveyModel = await _sessionService.Get <SurveyModel>(idClaim.Value); var providerCount = await _sessionService.Get <int>($"{idClaim.Value}_ProviderCount"); await _sessionService.Remove($"{idClaim.Value}_PagingState"); // remove paging state incase we loop round for another provider var hasMultipleProviders = providerCount > 0; var confirmationVm = new ConfirmationViewModel { ProviderName = surveyModel.ProviderName, FeedbackRating = surveyModel.Rating.Value, FatUrl = _config.ExternalLinks.FindApprenticeshipTrainingSiteUrl, ComplaintSiteUrl = _config.ExternalLinks.ComplaintSiteUrl, ComplaintToProviderSiteUrl = _config.ExternalLinks.ComplaintToProviderSiteUrl, HasMultipleProviders = hasMultipleProviders, EncodedAccountId = encodedAccountId, EmployerAccountsHomeUrl = _urlBuilder.AccountsLink("AccountsHome", encodedAccountId) }; return(View(confirmationVm)); }
public IActionResult Index(string encodedAccountId) { ViewBag.EmployerAccountsHomeUrl = _urlBuilder.AccountsLink("AccountsHome", encodedAccountId); return(View()); }