Modified: 
uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/internal/util/PositiveIntSetTest.java
URL: 
http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/internal/util/PositiveIntSetTest.java?rev=1636458&r1=1636457&r2=1636458&view=diff
==============================================================================
--- 
uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/internal/util/PositiveIntSetTest.java
 (original)
+++ 
uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/internal/util/PositiveIntSetTest.java
 Mon Nov  3 22:15:41 2014
@@ -35,7 +35,7 @@ public class PositiveIntSetTest extends 
 
 
   public void testBasic() {
-    PositiveIntSet s = new PositiveIntSet();
+    PositiveIntSet_impl s = new PositiveIntSet_impl();
     s.add(128);
     assertTrue(s.isBitSet);
     s.add(128128);
@@ -50,7 +50,7 @@ public class PositiveIntSetTest extends 
 
     // test offset
     int bb = 300000;
-    s = new PositiveIntSet();
+    s = new PositiveIntSet_impl();
     assertTrue(s.useOffset);
     s.add(bb);
 
@@ -75,7 +75,7 @@ public class PositiveIntSetTest extends 
 
     
     bb = 67;
-    s = new PositiveIntSet();
+    s = new PositiveIntSet_impl();
     assertTrue(s.useOffset);
     s.add(bb);
     s.add(bb);
@@ -96,14 +96,14 @@ public class PositiveIntSetTest extends 
     assertEquals(bb+1, it.next());
     assertEquals(bb+2, it.next());
     
-    // test switch from hash set to bit set
+    // test switch from IntSet to bit set
     s.clear();  // keeps useOffset false
     s.add(1216);  // makes the space used by bit set = 41 words
     
     for (int i = 1; i < 23; i++) {
       s.add(i);
 //      System.out.println("i is " + i + ", isBitSet = " + s.isBitSet);
-      assertTrue("i is " + i, (i < 20) ? (!s.isBitSet) : s.isBitSet);
+      assertTrue("i is " + i, (i < 15) ? (s.isIntSet) : s.isBitSet);
     }
     
     it = s.getOrderedIterator();
@@ -121,32 +121,48 @@ public class PositiveIntSetTest extends 
 //      if (!s.isBitSet) {
 //        System.out.println("is Bit set? " + s.isBitSet + ", i = " + i + ", # 
of entries is " + s.size());
 //      }
-      reached = i >= 5120;
+      reached = i >= 2560;
       assertTrue((!reached) ? s.isBitSet : !s.isBitSet);
     }
     assertTrue(reached);
   }
   
   public void testiterators() {
-    PositiveIntSet s = new PositiveIntSet();
-    int [] e = new int [] {123, 987, 789};
+    PositiveIntSet_impl s = new PositiveIntSet_impl();
+    int [] e = new int [] {123, 987, 789, 155, 
+                           156, 177, 444, 333,
+                           242, 252, 262, 243,
+                           221, 219, 217, 300,
+                           399};
     int [] eOrdered = Arrays.copyOf(e, e.length);
     Arrays.sort(eOrdered);
-    s.add(e);
+    for (int i : e) {s.add(i);}
     int[] r = s.toUnorderedIntArray();
     assertTrue(Arrays.equals(r, eOrdered));    
    
     s.clear(); 
     e[0] = 125;
     e[2] = 1500000;
-    s.add(e);
+    eOrdered = Arrays.copyOf(e, e.length);
+    Arrays.sort(eOrdered);
+    
+    for (int i : e) {s.add(i);}
     r = s.toUnorderedIntArray();
     assertFalse(Arrays.equals(r, e));
     assertFalse(s.isBitSet);
     r = s.toOrderedIntArray();
-    assertTrue(Arrays.equals(r, e));
+    assertTrue(Arrays.equals(r, eOrdered));
     
   }
   
+  /**
+   * TODO  extra cases to verify (paths)
+   * 
+   * 1) Switching from bit set due to lower bound dropping below offset
+   *   - where result would (?) fit in "short" hash set
+   *   - where result would be size < 16 
+   *   
+   * 2) Switching from bit set (tiny) to intSet  
+   */
   
 }

Modified: 
uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/jcas/test/JCasTest.java
URL: 
http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/jcas/test/JCasTest.java?rev=1636458&r1=1636457&r2=1636458&view=diff
==============================================================================
--- 
uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/jcas/test/JCasTest.java
 (original)
+++ 
uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/jcas/test/JCasTest.java
 Mon Nov  3 22:15:41 2014
@@ -347,10 +347,22 @@ public class JCasTest extends TestCase {
                        FSIndex fsi1 = jfsi.getIndex("all", Root.type);
                        FSIterator fsit1 = fsi1.iterator();
                        assertTrue(fsit1.isValid());
-                       assertTrue(r2 == fsit1.get());
-                       fsit1.moveToNext();
-                       assertTrue(fsit1.isValid());
-                       assertTrue(r1 == fsit1.get());
+                       Root[] fetched = new Root[2];
+                       
+                       fetched[0] = (Root) fsit1.get();
+      fsit1.moveToNext();
+      assertTrue(fsit1.isValid());
+
+      fetched[1] = (Root) fsit1.get();
+      assertTrue(fsit1.isValid());
+      fsit1.moveToNext();
+      assertFalse(fsit1.isValid());
+                       
+      // is bag index, order may be arbitrary
+                       assertTrue((fetched[0] == r1 && fetched[1] == r2) ||
+                                  (fetched[1] == r1 && fetched[0] == r2));
+                       
+                       
                        /*
        * while (fsit1.isValid()) { System.out.println("Iterator getting: " +
        * fsit1.get().toString()); fsit1.moveToNext(); }


Reply via email to