Exemplo n.º 1
0
        public void Search_PropertiesBackendSkipFilterTokens(string input)
        {
            var searchElement = new SearchElement();

            searchElement.RegisterSearchBackend(CreateSearchBackend <EquatableAndComparableTestData>(SearchBackendType.Properties));

            var sourceData = new[]
            {
                new EquatableAndComparableTestData {
                    Name = "hello"
                },
                new EquatableAndComparableTestData {
                    Name = "hola"
                },
            };

            EquatableAndComparableTestData[] filtered = null;

            searchElement.RegisterSearchQueryHandler <EquatableAndComparableTestData>(q => filtered = q.Apply(sourceData).ToArray());
            searchElement.AddSearchDataProperty(new PropertyPath(nameof(EquatableAndComparableTestData.Name)));
            searchElement.AddSearchFilterPopupItem("c", "component type");

            searchElement.Search(input);
            Assert.That(filtered, Is.EquivalentTo(sourceData));
        }
Exemplo n.º 2
0
        public void Search_TokensShouldBeEmptyOnEmptySearchString(SearchBackendType backendType)
        {
            var searchElement = new SearchElement();

            searchElement.RegisterSearchBackend(CreateSearchBackend <TestData>(backendType));

            searchElement.RegisterSearchQueryHandler <TestData>(q =>
            {
                Assert.DoesNotThrow(() =>
                {
                    var i = q.Tokens.Count;
                });
            });
            searchElement.AddSearchDataProperty(new PropertyPath(nameof(TestData.Name)));

            searchElement.Search(string.Empty);
            searchElement.Search(null);
            searchElement.Search("   ");
        }