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.");
        }
Esempio n. 2
0
        /// <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));
        }