public void SearchItemsViewModelTests_Search_EmptyFilter_NoSearchResults() { var viewModel = new SearchItemsViewModel(""); viewModel.SearchAsync().Wait(); Assert.AreEqual(0, viewModel.SearchItems.Count(), "Searching for empty string should return nothing."); }
/// <summary> /// Search for the given filter /// </summary> internal void Search(string searchFilter) { if (string.IsNullOrEmpty(searchFilter) || string.IsNullOrEmpty(searchFilter.Trim())) { Caption = "\"\""; return; } searchFilter = searchFilter.Trim(); Caption = $"\"{searchFilter}\""; if (searchFilter.Length > 20) { Caption = $"\"{searchFilter.Substring(0, 20)}...\""; } var viewModel = new SearchItemsViewModel(searchFilter); viewModel.SearchAsync(); _searchControl.DataContext = viewModel; }
private static void ValidateSearch(SearchItemsViewModel viewModel, List <BaseEntity> expectedEntities) { Utility.WaitUntil(() => { viewModel.SearchAsync().Wait(); if (viewModel.SearchItems.Count() != expectedEntities.Count) { return(false); } foreach (var entity in expectedEntities) { if (viewModel.SearchItems.Count(si => si.ID == entity.Id && si.Entity.Name == entity.Name) != 1) { return(false); } } return(true); }, "Timeout waiting for correct search results", new TimeSpan(0, 2, 0), new TimeSpan(0, 0, 1)); }