Ejemplo n.º 1
0
        public void Should_add_fields_from_filters()
        {
            var query = new ClrQuery
            {
                Filter =
                    ClrFilter.And(
                        ClrFilter.Not(
                            ClrFilter.Eq("field1", 1)),
                        ClrFilter.Or(
                            ClrFilter.Eq("field2", 2),
                            ClrFilter.Eq("field2", 4)))
            };

            var fields = query.GetAllFields();

            var expected = new HashSet <string>
            {
                "field1",
                "field2"
            };

            Assert.Equal(expected, fields);
        }
Ejemplo n.º 2
0
        public void Should_make_query_with_endswith()
        {
            var filter = ClrFilter.EndsWith("Text", "search");

            AssertQuery("{ 'Text' : /search$/i }", filter);
        }
Ejemplo n.º 3
0
        public void Should_make_query_with_endswith_and_null_value()
        {
            var filter = ClrFilter.EndsWith("Text", null !);

            AssertQuery("{ 'Text' : /null$/i }", filter);
        }
Ejemplo n.º 4
0
        public void Should_make_query_with_createdBy()
        {
            var filter = ClrFilter.Eq("createdBy", "subject:me");

            AssertQuery("{ 'cb' : 'subject:me' }", filter);
        }
Ejemplo n.º 5
0
        public void Should_make_query_with_exists()
        {
            var filter = ClrFilter.Exists("Text");

            AssertQuery("{ 'Text' : { '$exists' : true, '$ne' : null } }", filter);
        }
Ejemplo n.º 6
0
        public void Should_make_query_with_matchs_and_regex_case_sensitive_syntax()
        {
            var filter = ClrFilter.Matchs("Text", "/search/");

            AssertQuery("{ 'Text' : /search/ }", filter);
        }
Ejemplo n.º 7
0
        public void Should_make_query_with_matchs_and_null_value()
        {
            var filter = ClrFilter.Matchs("Text", null !);

            AssertQuery("{ 'Text' : /null/i }", filter);
        }
Ejemplo n.º 8
0
        public void Should_make_query_with_startswith()
        {
            var filter = ClrFilter.StartsWith("Text", "search");

            AssertQuery("{ 'Text' : /^search/i }", filter);
        }
Ejemplo n.º 9
0
        public void Should_make_query_with_pixelWidth()
        {
            var filter = ClrFilter.Eq("metadata.pixelWidth", 800);

            AssertQuery("{ 'md.pixelWidth' : 800 }", filter);
        }
Ejemplo n.º 10
0
        public void Should_make_query_with_pixelHeight()
        {
            var filter = ClrFilter.Eq("metadata.pixelHeight", 600);

            AssertQuery("{ 'md.pixelHeight' : 600 }", filter);
        }
Ejemplo n.º 11
0
        public void Should_make_query_with_fileSize()
        {
            var filter = ClrFilter.Eq("fileSize", 1024);

            AssertQuery("{ 'fs' : NumberLong(1024) }", filter);
        }
Ejemplo n.º 12
0
        public void Should_make_query_with_mimeType()
        {
            var filter = ClrFilter.Eq("mimeType", "text/json");

            AssertQuery("{ 'mm' : 'text/json' }", filter);
        }
Ejemplo n.º 13
0
        public void Should_make_query_with_fileName()
        {
            var filter = ClrFilter.Eq("fileName", "Logo.png");

            AssertQuery("{ 'fn' : 'Logo.png' }", filter);
        }
Ejemplo n.º 14
0
        public void Should_make_query_with_tags()
        {
            var filter = ClrFilter.Eq("tags", "tag1");

            AssertQuery("{ 'td' : 'tag1' }", filter);
        }
Ejemplo n.º 15
0
        public void Should_make_query_with_fileVersion()
        {
            var filter = ClrFilter.Eq("fileVersion", 2L);

            AssertQuery("{ 'fv' : NumberLong(2) }", filter);
        }
Ejemplo n.º 16
0
        public void Should_make_query_with_endswithand_invalid_character()
        {
            var filter = ClrFilter.EndsWith("Text", "search(");

            AssertQuery("{ 'Text' : /search\\($/i }", filter);
        }
Ejemplo n.º 17
0
        public void Should_make_query_with_startswith_and_null_value()
        {
            var filter = ClrFilter.StartsWith("Text", null !);

            AssertQuery("{ 'Text' : /^null/i }", filter);
        }
Ejemplo n.º 18
0
 public void Should_throw_exception_for_invalid_field()
 {
     Assert.Throws <NotSupportedException>(() => _F(ClrFilter.Eq("data/invalid/iv", "Me")));
 }
Ejemplo n.º 19
0
        public void Should_make_query_with_startswith_and_invalid_character()
        {
            var filter = ClrFilter.StartsWith("Text", "search(");

            AssertQuery("{ 'Text' : /^search\\(/i }", filter);
        }
Ejemplo n.º 20
0
        public void Should_make_query_with_reftoken_fix()
        {
            var filter = ClrFilter.Eq("CreatedBy", "user:me");

            AssertQuery("{ 'CreatedBy' : 'subject:me' }", filter);
        }
Ejemplo n.º 21
0
        public void Should_make_query_with_matchs()
        {
            var filter = ClrFilter.Matchs("Text", "^search$");

            AssertQuery("{ 'Text' : /^search$/i }", filter);
        }
Ejemplo n.º 22
0
        public void Should_make_query_with_number()
        {
            var filter = ClrFilter.Eq("Version", 0L);

            AssertQuery("{ 'Version' : NumberLong(0) }", filter);
        }
Ejemplo n.º 23
0
        public void Should_make_query_with_empty_for_class()
        {
            var filter = ClrFilter.Empty("Text");

            AssertQuery("{ '$or' : [{ 'Text' : { '$exists' : false } }, { 'Text' : null }, { 'Text' : '' }, { 'Text' : { '$size' : 0 } }] }", filter);
        }
Ejemplo n.º 24
0
        public void Should_make_query_with_contains()
        {
            var filter = ClrFilter.Contains("Text", "search");

            AssertQuery("{ 'Text' : /search/i }", filter);
        }
Ejemplo n.º 25
0
        public void Should_make_query_with_contains_and_invalid_character()
        {
            var filter = ClrFilter.Contains("Text", "search(");

            AssertQuery("{ 'Text' : /search\\(/i }", filter);
        }
Ejemplo n.º 26
0
        public void Should_make_query_with_lastModifiedBy()
        {
            var filter = ClrFilter.Eq("lastModifiedBy", "subject:me");

            AssertQuery("{ 'mb' : 'subject:me' }", filter);
        }