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); }
public void Should_make_query_with_endswith() { var filter = ClrFilter.EndsWith("Text", "search"); AssertQuery("{ 'Text' : /search$/i }", filter); }
public void Should_make_query_with_endswith_and_null_value() { var filter = ClrFilter.EndsWith("Text", null !); AssertQuery("{ 'Text' : /null$/i }", filter); }
public void Should_make_query_with_createdBy() { var filter = ClrFilter.Eq("createdBy", "subject:me"); AssertQuery("{ 'cb' : 'subject:me' }", filter); }
public void Should_make_query_with_exists() { var filter = ClrFilter.Exists("Text"); AssertQuery("{ 'Text' : { '$exists' : true, '$ne' : null } }", filter); }
public void Should_make_query_with_matchs_and_regex_case_sensitive_syntax() { var filter = ClrFilter.Matchs("Text", "/search/"); AssertQuery("{ 'Text' : /search/ }", filter); }
public void Should_make_query_with_matchs_and_null_value() { var filter = ClrFilter.Matchs("Text", null !); AssertQuery("{ 'Text' : /null/i }", filter); }
public void Should_make_query_with_startswith() { var filter = ClrFilter.StartsWith("Text", "search"); AssertQuery("{ 'Text' : /^search/i }", filter); }
public void Should_make_query_with_pixelWidth() { var filter = ClrFilter.Eq("metadata.pixelWidth", 800); AssertQuery("{ 'md.pixelWidth' : 800 }", filter); }
public void Should_make_query_with_pixelHeight() { var filter = ClrFilter.Eq("metadata.pixelHeight", 600); AssertQuery("{ 'md.pixelHeight' : 600 }", filter); }
public void Should_make_query_with_fileSize() { var filter = ClrFilter.Eq("fileSize", 1024); AssertQuery("{ 'fs' : NumberLong(1024) }", filter); }
public void Should_make_query_with_mimeType() { var filter = ClrFilter.Eq("mimeType", "text/json"); AssertQuery("{ 'mm' : 'text/json' }", filter); }
public void Should_make_query_with_fileName() { var filter = ClrFilter.Eq("fileName", "Logo.png"); AssertQuery("{ 'fn' : 'Logo.png' }", filter); }
public void Should_make_query_with_tags() { var filter = ClrFilter.Eq("tags", "tag1"); AssertQuery("{ 'td' : 'tag1' }", filter); }
public void Should_make_query_with_fileVersion() { var filter = ClrFilter.Eq("fileVersion", 2L); AssertQuery("{ 'fv' : NumberLong(2) }", filter); }
public void Should_make_query_with_endswithand_invalid_character() { var filter = ClrFilter.EndsWith("Text", "search("); AssertQuery("{ 'Text' : /search\\($/i }", filter); }
public void Should_make_query_with_startswith_and_null_value() { var filter = ClrFilter.StartsWith("Text", null !); AssertQuery("{ 'Text' : /^null/i }", filter); }
public void Should_throw_exception_for_invalid_field() { Assert.Throws <NotSupportedException>(() => _F(ClrFilter.Eq("data/invalid/iv", "Me"))); }
public void Should_make_query_with_startswith_and_invalid_character() { var filter = ClrFilter.StartsWith("Text", "search("); AssertQuery("{ 'Text' : /^search\\(/i }", filter); }
public void Should_make_query_with_reftoken_fix() { var filter = ClrFilter.Eq("CreatedBy", "user:me"); AssertQuery("{ 'CreatedBy' : 'subject:me' }", filter); }
public void Should_make_query_with_matchs() { var filter = ClrFilter.Matchs("Text", "^search$"); AssertQuery("{ 'Text' : /^search$/i }", filter); }
public void Should_make_query_with_number() { var filter = ClrFilter.Eq("Version", 0L); AssertQuery("{ 'Version' : NumberLong(0) }", filter); }
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); }
public void Should_make_query_with_contains() { var filter = ClrFilter.Contains("Text", "search"); AssertQuery("{ 'Text' : /search/i }", filter); }
public void Should_make_query_with_contains_and_invalid_character() { var filter = ClrFilter.Contains("Text", "search("); AssertQuery("{ 'Text' : /search\\(/i }", filter); }
public void Should_make_query_with_lastModifiedBy() { var filter = ClrFilter.Eq("lastModifiedBy", "subject:me"); AssertQuery("{ 'mb' : 'subject:me' }", filter); }