1717import java .util .ArrayList ;
1818import java .util .EnumSet ;
1919import java .util .HashMap ;
20+ import java .util .Iterator ;
2021import java .util .List ;
2122import java .util .Map ;
2223import java .util .Set ;
@@ -165,6 +166,26 @@ public void testReplaceDatabaseFromCBLAndroid104() throws CouchbaseLiteException
165166 assertEquals ("content " + String .valueOf (i ), str );
166167 br .close ();
167168 }
169+
170+ int counter = 0 ;
171+ // Create a view and register its map function:
172+ View v = replacedDatabase .getView ("view_test" );
173+ v .setMap (new Mapper () {
174+ @ Override
175+ public void map (Map <String , Object > document , Emitter emitter ) {
176+ emitter .emit (document .get ("_id" ), document );
177+ }
178+ }, "1" );
179+ v .updateIndex ();
180+ Query q = v .createQuery ();
181+ QueryEnumerator r = q .run ();
182+ for (Iterator <QueryRow > it = r ; it .hasNext (); ) {
183+ QueryRow row = it .next ();
184+ Log .w (Log .TAG , row .getDocument ().getProperties ().toString ());
185+ counter ++;
186+ }
187+ assertEquals (2 , counter );
188+
168189 replacedDatabase .delete ();
169190 }
170191
@@ -192,6 +213,26 @@ public void testReplaceDatabaseFromCBLAndroid110() throws CouchbaseLiteException
192213 assertEquals ("content " + String .valueOf (i ), str );
193214 br .close ();
194215 }
216+
217+ int counter = 0 ;
218+ // Create a view and register its map function:
219+ View v = replacedDatabase .getView ("view_test" );
220+ v .setMap (new Mapper () {
221+ @ Override
222+ public void map (Map <String , Object > document , Emitter emitter ) {
223+ emitter .emit (document .get ("_id" ), document );
224+ }
225+ }, "1" );
226+ v .updateIndex ();
227+ Query q = v .createQuery ();
228+ QueryEnumerator r = q .run ();
229+ for (Iterator <QueryRow > it = r ; it .hasNext (); ) {
230+ QueryRow row = it .next ();
231+ Log .w (Log .TAG , row .getDocument ().getProperties ().toString ());
232+ counter ++;
233+ }
234+ assertEquals (2 , counter );
235+
195236 replacedDatabase .delete ();
196237 }
197238
@@ -217,6 +258,28 @@ public void testReplaceDatabaseFromCBLIOS104() throws CouchbaseLiteException, IO
217258 assertTrue (str .length () > 0 );
218259 br .close ();
219260 }
261+
262+
263+ int counter = 0 ;
264+ // Create a view and register its map function:
265+ View v = replacedDatabase .getView ("view_test" );
266+ v .setMap (new Mapper () {
267+ @ Override
268+ public void map (Map <String , Object > document , Emitter emitter ) {
269+ emitter .emit (document .get ("_id" ), document );
270+ }
271+ }, "1" );
272+ v .updateIndex ();
273+ Query q = v .createQuery ();
274+ QueryEnumerator r = q .run ();
275+ for (Iterator <QueryRow > it = r ; it .hasNext (); ) {
276+ QueryRow row = it .next ();
277+ Log .w (Log .TAG , row .getDocument ().getProperties ().toString ());
278+ counter ++;
279+ }
280+
281+ assertEquals (1 , counter );
282+
220283 replacedDatabase .delete ();
221284 }
222285
@@ -242,6 +305,27 @@ public void testReplaceDatabaseFromCBLIOS110() throws CouchbaseLiteException, IO
242305 assertTrue (str .length () > 0 );
243306 br .close ();
244307 }
308+
309+ int counter = 0 ;
310+ // Create a view and register its map function:
311+ View v = replacedDatabase .getView ("view_test" );
312+ v .setMap (new Mapper () {
313+ @ Override
314+ public void map (Map <String , Object > document , Emitter emitter ) {
315+ emitter .emit (document .get ("_id" ), document );
316+ }
317+ }, "1" );
318+ v .updateIndex ();
319+ Query q = v .createQuery ();
320+ QueryEnumerator r = q .run ();
321+ for (Iterator <QueryRow > it = r ; it .hasNext (); ) {
322+ QueryRow row = it .next ();
323+ Log .w (Log .TAG , row .getDocument ().getProperties ().toString ());
324+ counter ++;
325+ }
326+
327+ assertEquals (1 , counter );
328+
245329 replacedDatabase .delete ();
246330 }
247331
@@ -266,7 +350,9 @@ public void testReplaceDatabaseFromCBLNet104() throws CouchbaseLiteException, IO
266350 }
267351
268352 /**
269- * Because of CBL .NET 1.1.0 sample database file. Following test fails.
353+ * Test for pre-built database test from CBL .NET 1.1.0
354+ * Because of CBL .NET 1.1.0 sample database file, following test fails.
355+ * TODO: Work this later
270356 */
271357 public void failingTestReplaceDatabaseFromCBLNet110 () throws CouchbaseLiteException , IOException {
272358 InputStream dbStream = getAsset ("netdb110.cblite" );
0 commit comments