public void SearchController_Add_Throws_On_Null_SearchDocument() { //Arrange //Act, Assert Assert.Throws <ArgumentNullException>(() => _internalSearchController.AddSearchDocument(null)); }
public void GetSearchResultsDetailed() { const string keyword = "super"; const string moduleBody = "super content is here"; const string userUrl = "mysite/userid/1"; const string tabUrl1 = "mysite/Home"; const string tabUrl2 = "mysite/AboutUs"; //first tab with 2 modules var doc1 = new SearchDocument { UniqueKey = "key01", TabId = TabId1, Url = tabUrl1, Title = keyword, SearchTypeId = TabSearchTypeId, ModifiedTimeUtc = DateTime.UtcNow }; var doc2 = new SearchDocument { UniqueKey = "key02", TabId = TabId1, Title = keyword, Url = tabUrl1, SearchTypeId = ModuleSearchTypeId, ModifiedTimeUtc = DateTime.UtcNow, ModuleDefId = HtmlModuleDefId, ModuleId = HtmlModuleId2, Body = moduleBody, RoleId = 731 }; var doc3 = new SearchDocument { UniqueKey = "key03", TabId = TabId1, Title = keyword, Url = tabUrl1, SearchTypeId = ModuleSearchTypeId, ModifiedTimeUtc = DateTime.UtcNow, ModuleDefId = HtmlModuleDefId, ModuleId = HtmlModuleId1, Body = moduleBody, RoleId = 731 }; //second tab with 1 module var doc4 = new SearchDocument { UniqueKey = "key04", TabId = TabId2, Url = tabUrl2, Title = keyword, SearchTypeId = TabSearchTypeId, ModifiedTimeUtc = DateTime.UtcNow, RoleId = RoleId0 }; var doc5 = new SearchDocument { UniqueKey = "key05", TabId = TabId2, Title = keyword, Url = tabUrl2, SearchTypeId = ModuleSearchTypeId, ModuleDefId = HtmlModuleId, ModuleId = HtmlModuleId3, ModifiedTimeUtc = DateTime.UtcNow, Body = moduleBody, RoleId = 731 }; //user doc var userdoc = new SearchDocument { UniqueKey = "key06", Url = userUrl, Title = keyword, SearchTypeId = UserSearchTypeId, ModifiedTimeUtc = DateTime.UtcNow, RoleId = RoleId731 }; _internalSearchController.AddSearchDocument(doc1); _internalSearchController.AddSearchDocument(doc2); _internalSearchController.AddSearchDocument(doc3); _internalSearchController.AddSearchDocument(doc4); _internalSearchController.AddSearchDocument(doc5); _internalSearchController.AddSearchDocument(userdoc); var query = new SearchQuery { KeyWords = keyword, SearchTypeIds = new[] { ModuleSearchTypeId, TabSearchTypeId, UserSearchTypeId }, RoleId = 731 }; //Run var search = GetGroupedDetailViewResults(query); //Assert var groupedDetailViews = search as List <GroupedDetailView> ?? search.ToList(); //Overall 3 groups - tab1, tab2 and user Assert.AreEqual(3, groupedDetailViews.Count()); //Tab 1 has 2 DetailViews Assert.AreEqual(2, groupedDetailViews.Single(x => x.DocumentUrl == tabUrl1).Results.Count()); //Tab 2 has 1 DetailViews Assert.AreEqual(1, groupedDetailViews.Single(x => x.DocumentUrl == tabUrl2).Results.Count()); //UserUrl has 1 DetailViews Assert.AreEqual(1, groupedDetailViews.Single(x => x.DocumentUrl == userUrl).Results.Count()); }