public async Task Search_Execute_All_SearchSteps() { var viewModel = new FindViewModel(); var context = new SearchContext(viewModel); _searchPipelineFactory.GetSearchContext(Arg.Is(viewModel)).Returns(context); var searchStep1 = Substitute.For <ISearchStep>(); var searchStep2 = Substitute.For <ISearchStep>(); var searchStep3 = Substitute.For <ISearchStep>(); var steps = new List <ISearchStep> { searchStep1, searchStep2, searchStep3 }; _searchPipelineFactory.GetSearchSteps(_providerSearchService, _mapper).Returns(steps); await _providerSearchEngine.Search(viewModel); await searchStep1.Received(1).Execute(context); await searchStep2.Received(1).Execute(context); await searchStep3.Received(1).Execute(context); }
public async Task <IActionResult> Find(FindViewModel viewModel) { var searchResults = await _providerSearchEngine.Search(viewModel); return(View(searchResults)); }