Author: jukka
Date: Tue Mar 25 03:26:49 2014
New Revision: 1581205

URL: http://svn.apache.org/r1581205
Log:
OAK-1594: Build fails on Java 8

Make the Solr tests independent of result ordering

Modified:
    
jackrabbit/oak/trunk/oak-solr-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/solr/query/SolrQueryEngineIT.java

Modified: 
jackrabbit/oak/trunk/oak-solr-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/solr/query/SolrQueryEngineIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/solr/query/SolrQueryEngineIT.java?rev=1581205&r1=1581204&r2=1581205&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-solr-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/solr/query/SolrQueryEngineIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-solr-core/src/test/java/org/apache/jackrabbit/oak/plugins/index/solr/query/SolrQueryEngineIT.java
 Tue Mar 25 03:26:49 2014
@@ -18,6 +18,7 @@ package org.apache.jackrabbit.oak.plugin
 
 import java.util.HashSet;
 import java.util.Set;
+
 import org.apache.jackrabbit.oak.api.Root;
 import org.apache.jackrabbit.oak.api.Tree;
 import org.apache.jackrabbit.oak.plugins.index.solr.SolrBaseTest;
@@ -30,8 +31,8 @@ import org.apache.jackrabbit.oak.spi.que
 import org.apache.jackrabbit.oak.spi.query.QueryIndex;
 import org.junit.Test;
 
+import static com.google.common.collect.Sets.newHashSet;
 import static junit.framework.Assert.assertEquals;
-import static junit.framework.Assert.assertFalse;
 import static junit.framework.Assert.assertNotNull;
 import static junit.framework.Assert.assertTrue;
 import static org.mockito.Mockito.mock;
@@ -55,10 +56,7 @@ public class SolrQueryEngineIT extends S
         FilterImpl filter = new FilterImpl(mock(SelectorImpl.class), "");
         filter.restrictPath("/somenode", Filter.PathRestriction.EXACT);
         Cursor cursor = index.query(filter, store.getRoot());
-        assertNotNull(cursor);
-        assertTrue(cursor.hasNext());
-        assertEquals("/somenode", cursor.next().getPath());
-        assertFalse(cursor.hasNext());
+        assertCursor(cursor, "/somenode");
     }
 
     @Test
@@ -77,12 +75,7 @@ public class SolrQueryEngineIT extends S
         FilterImpl filter = new FilterImpl(mock(SelectorImpl.class), "");
         filter.restrictPath("/somenode", 
Filter.PathRestriction.DIRECT_CHILDREN);
         Cursor cursor = index.query(filter, store.getRoot());
-        assertNotNull(cursor);
-        assertTrue(cursor.hasNext());
-        assertEquals("/somenode/child1", cursor.next().getPath());
-        assertTrue(cursor.hasNext());
-        assertEquals("/somenode/child2", cursor.next().getPath());
-        assertFalse(cursor.hasNext());
+        assertCursor(cursor, "/somenode/child1", "/somenode/child2");
     }
 
     @Test
@@ -101,16 +94,9 @@ public class SolrQueryEngineIT extends S
         FilterImpl filter = new FilterImpl(mock(SelectorImpl.class), "");
         filter.restrictPath("/somenode", Filter.PathRestriction.ALL_CHILDREN);
         Cursor cursor = index.query(filter, store.getRoot());
-        assertNotNull(cursor);
-        assertTrue(cursor.hasNext());
-        assertEquals("/somenode", cursor.next().getPath());
-        assertTrue(cursor.hasNext());
-        assertEquals("/somenode/child1", cursor.next().getPath());
-        assertTrue(cursor.hasNext());
-        assertEquals("/somenode/child2", cursor.next().getPath());
-        assertTrue(cursor.hasNext());
-        assertEquals("/somenode/child2/descendant", cursor.next().getPath());
-        assertFalse(cursor.hasNext());
+        assertCursor(
+                cursor, "/somenode", "/somenode/child1",
+                "/somenode/child2", "/somenode/child2/descendant");
     }
 
     @Test
@@ -126,12 +112,7 @@ public class SolrQueryEngineIT extends S
         FilterImpl filter = new FilterImpl(mock(SelectorImpl.class), "");
         filter.restrictProperty("foo", Operator.EQUAL, 
PropertyValues.newString("bar"));
         Cursor cursor = index.query(filter, store.getRoot());
-        assertNotNull(cursor);
-        assertTrue(cursor.hasNext());
-        assertEquals("/somenode", cursor.next().getPath());
-        assertTrue(cursor.hasNext());
-        assertEquals("/anotherone", cursor.next().getPath());
-        assertFalse(cursor.hasNext());
+        assertCursor(cursor, "/somenode", "/anotherone");
     }
 
     @Test
@@ -150,10 +131,16 @@ public class SolrQueryEngineIT extends S
         when(selector.getPrimaryTypes()).thenReturn(primaryTypes);
         FilterImpl filter = new FilterImpl(selector, "select * from 
[nt:folder]");
         Cursor cursor = index.query(filter, store.getRoot());
+        assertCursor(cursor, "/afoldernode");
+    }
+
+    private void assertCursor(Cursor cursor, String... paths) {
         assertNotNull(cursor);
-        assertTrue(cursor.hasNext());
-        assertEquals("/afoldernode", cursor.next().getPath());
-        assertFalse(cursor.hasNext());
+        Set<String> set = newHashSet();
+        while (cursor.hasNext()) {
+            assertTrue(set.add(cursor.next().getPath()));
+        }
+        assertEquals(newHashSet(paths), set);
     }
 
 }


Reply via email to