public SearchSideBySideMessage( IMessageServiceConfiguration configuration, SearchSideBySideViewModel model, string searchUrl) { _configuration = configuration ?? throw new ArgumentNullException(nameof(configuration)); _model = model ?? throw new ArgumentNullException(nameof(model)); _searchUrl = searchUrl ?? throw new ArgumentNullException(nameof(searchUrl)); }
public async Task <ActionResult> SearchSideBySide(SearchSideBySideViewModel input) { var currentUser = GetCurrentUser(); if (!_featureFlagService.IsSearchSideBySideEnabled(currentUser)) { return(new HttpNotFoundResult()); } var searchUrl = Url.SearchSideBySide(searchTerm: input.SearchTerm?.Trim(), relativeUrl: false); await _searchSideBySideService.RecordFeedbackAsync(input, searchUrl); TempData["Message"] = "Thank you for providing feedback! Feel free to try some other queries."; return(RedirectToAction(nameof(SearchSideBySide))); }
public Facts() { SearchSideBySideService = new Mock <ISearchSideBySideService>(); FeatureFlagService = new Mock <IFeatureFlagService>(); HttpContext = new Mock <HttpContextBase>(); FeatureFlagService.SetReturnsDefault(true); SearchTerm = "json"; ViewModel = new SearchSideBySideViewModel { SearchTerm = SearchTerm, }; Target = new ExperimentsController( SearchSideBySideService.Object, FeatureFlagService.Object); TestUtility.SetupHttpContextMockForUrlGeneration(HttpContext, Target); Target.SetOwinContextOverride(Fakes.CreateOwinContext()); Target.SetCurrentUser(TestUtility.FakeUser); }
public Facts() { Model = new SearchSideBySideViewModel(); SearchUrl = "https://localhost/experiments/search-sxs?q=json"; }