|
14 | 14 |
|
15 | 15 | package com.google.firebase.firestore;
|
16 | 16 |
|
| 17 | +import static com.google.firebase.firestore.testutil.IntegrationTestUtil.testCollectionWithDocs; |
17 | 18 | import static com.google.firebase.firestore.testutil.IntegrationTestUtil.testFirestore;
|
| 19 | +import static com.google.firebase.firestore.testutil.IntegrationTestUtil.waitFor; |
18 | 20 | import static com.google.firebase.firestore.testutil.TestUtil.assertDoesNotThrow;
|
| 21 | +import static com.google.firebase.firestore.testutil.TestUtil.map; |
| 22 | +import static org.junit.Assert.assertEquals; |
19 | 23 |
|
20 | 24 | import androidx.test.ext.junit.runners.AndroidJUnit4;
|
21 | 25 | import com.google.android.gms.tasks.Task;
|
@@ -112,15 +116,49 @@ public void testAutomaticIndexingSetSuccessfully() {
|
112 | 116 | .setLocalCacheSettings(PersistentCacheSettings.newBuilder().build())
|
113 | 117 | .build();
|
114 | 118 | db.setFirestoreSettings(settings);
|
| 119 | + |
| 120 | + CollectionReference collection = |
| 121 | + testCollectionWithDocs( |
| 122 | + map( |
| 123 | + "a", map("match", true), |
| 124 | + "b", map("match", false), |
| 125 | + "c", map("match", false))); |
| 126 | + QuerySnapshot results = waitFor(collection.whereEqualTo("match", true).get()); |
| 127 | + assertEquals(1, results.size()); |
| 128 | + |
115 | 129 | assertDoesNotThrow(() -> db.getPersistentCacheIndexManager().enableIndexAutoCreation());
|
| 130 | + |
| 131 | + results = waitFor(collection.whereEqualTo("match", true).get()); |
| 132 | + assertEquals(1, results.size()); |
| 133 | + |
116 | 134 | assertDoesNotThrow(() -> db.getPersistentCacheIndexManager().disableIndexAutoCreation());
|
| 135 | + |
| 136 | + results = waitFor(collection.whereEqualTo("match", true).get()); |
| 137 | + assertEquals(1, results.size()); |
117 | 138 | }
|
118 | 139 |
|
119 | 140 | @Test
|
120 | 141 | public void testAutomaticIndexingSetSuccessfullyUseDefault() {
|
121 | 142 | // Use persistent disk cache (default)
|
122 | 143 | FirebaseFirestore db = testFirestore();
|
| 144 | + |
| 145 | + CollectionReference collection = |
| 146 | + testCollectionWithDocs( |
| 147 | + map( |
| 148 | + "a", map("match", true), |
| 149 | + "b", map("match", false), |
| 150 | + "c", map("match", false))); |
| 151 | + QuerySnapshot results = waitFor(collection.whereEqualTo("match", true).get()); |
| 152 | + assertEquals(1, results.size()); |
| 153 | + |
123 | 154 | assertDoesNotThrow(() -> db.getPersistentCacheIndexManager().enableIndexAutoCreation());
|
| 155 | + |
| 156 | + results = waitFor(collection.whereEqualTo("match", true).get()); |
| 157 | + assertEquals(1, results.size()); |
| 158 | + |
124 | 159 | assertDoesNotThrow(() -> db.getPersistentCacheIndexManager().disableIndexAutoCreation());
|
| 160 | + |
| 161 | + results = waitFor(collection.whereEqualTo("match", true).get()); |
| 162 | + assertEquals(1, results.size()); |
125 | 163 | }
|
126 | 164 | }
|
0 commit comments