Search in sources :

Example 51 with Query

use of com.google.firebase.firestore.core.Query in project firebase-android-sdk by firebase.

the class SQLiteIndexManagerTest method testEndBeforeFilter.

@Test
public void testEndBeforeFilter() {
    setUpSingleValueFilter();
    Query query = query("coll").orderBy(orderBy("count")).endAt(bound(/* inclusive= */
    false, 2));
    verifyResults(query, "coll/val1");
}
Also used : Query(com.google.firebase.firestore.core.Query) Test(org.junit.Test)

Example 52 with Query

use of com.google.firebase.firestore.core.Query in project firebase-android-sdk by firebase.

the class SQLiteIndexManagerTest method testNoMatchingFilter.

@Test
public void testNoMatchingFilter() {
    setUpSingleValueFilter();
    Query query = query("coll").filter(filter("unknown", "==", true));
    assertEquals(indexManager.getIndexType(query.toTarget()), IndexManager.IndexType.NONE);
    assertNull(indexManager.getDocumentsMatchingTarget(query.toTarget()));
}
Also used : Query(com.google.firebase.firestore.core.Query) Test(org.junit.Test)

Example 53 with Query

use of com.google.firebase.firestore.core.Query in project firebase-android-sdk by firebase.

the class SQLiteIndexManagerTest method testNotInFilter.

@Test
public void testNotInFilter() {
    setUpSingleValueFilter();
    Query query = query("coll").filter(filter("count", "not-in", Arrays.asList(1, 2)));
    verifyResults(query, "coll/val3");
}
Also used : Query(com.google.firebase.firestore.core.Query) Test(org.junit.Test)

Example 54 with Query

use of com.google.firebase.firestore.core.Query in project firebase-android-sdk by firebase.

the class SQLiteIndexManagerTest method testCursorsDoNoExpandResultSet.

@Test
public void testCursorsDoNoExpandResultSet() {
    indexManager.addFieldIndex(fieldIndex("coll", "c", Kind.ASCENDING));
    indexManager.addFieldIndex(fieldIndex("coll", "c", Kind.DESCENDING));
    addDoc("coll/val1", map("a", 1, "b", 1, "c", 3));
    addDoc("coll/val2", map("a", 2, "b", 2, "c", 2));
    Query query = query("coll").filter(filter("c", ">", 2)).orderBy(orderBy("c")).startAt(bound(true, 2));
    verifyResults(query, "coll/val1");
    query = query("coll").filter(filter("c", "<", 3)).orderBy(orderBy("c", "desc")).startAt(bound(true, 3));
    verifyResults(query, "coll/val2");
}
Also used : Query(com.google.firebase.firestore.core.Query) Test(org.junit.Test)

Example 55 with Query

use of com.google.firebase.firestore.core.Query in project firebase-android-sdk by firebase.

the class SQLiteIndexManagerTest method testDescendingOrderWithLessThanFilter.

@Test
public void testDescendingOrderWithLessThanFilter() {
    setUpMultipleOrderBys();
    Query originalQuery = query("coll").filter(filter("a", "==", 2)).filter(filter("b", "==", 2)).filter(filter("c", "<", 5)).orderBy(orderBy("c", "desc"));
    Query queryWithNonRestrictedBound = originalQuery.startAt(bound(/* inclusive= */
    false, 6)).endAt(bound(/* inclusive= */
    false, 1));
    Query queryWithRestrictedBound = originalQuery.startAt(bound(/* inclusive= */
    false, 4)).endAt(bound(/* inclusive= */
    false, 2));
    verifyResults(originalQuery, "coll/val4", "coll/val3", "coll/val2");
    verifyResults(queryWithNonRestrictedBound, "coll/val4", "coll/val3", "coll/val2");
    verifyResults(queryWithRestrictedBound, "coll/val3");
}
Also used : Query(com.google.firebase.firestore.core.Query) Test(org.junit.Test)

Aggregations

Query (com.google.firebase.firestore.core.Query)205 Test (org.junit.Test)195 BundledQuery (com.google.firebase.firestore.bundle.BundledQuery)42 NamedQuery (com.google.firebase.firestore.bundle.NamedQuery)41 DocumentSet (com.google.firebase.firestore.model.DocumentSet)18 StructuredQuery (com.google.firestore.v1.StructuredQuery)16 Target (com.google.firestore.v1.Target)13 DocumentsTarget (com.google.firestore.v1.Target.DocumentsTarget)13 QueryTarget (com.google.firestore.v1.Target.QueryTarget)13 MutableDocument (com.google.firebase.firestore.model.MutableDocument)12 FieldIndex (com.google.firebase.firestore.model.FieldIndex)8 TargetData (com.google.firebase.firestore.local.TargetData)7 ArrayList (java.util.ArrayList)7 DocumentKey (com.google.firebase.firestore.model.DocumentKey)5 ByteString (com.google.protobuf.ByteString)5 HashMap (java.util.HashMap)4 Document (com.google.firebase.firestore.model.Document)3 SnapshotVersion (com.google.firebase.firestore.model.SnapshotVersion)3 Timestamp (com.google.firebase.Timestamp)2 QueryListener (com.google.firebase.firestore.core.QueryListener)2