You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2011/07/17 20:15:50 UTC

svn commit: r1147692 - in /lucene/dev/branches/branch_3x: ./ lucene/ lucene/backwards/ lucene/backwards/src/test-framework/ lucene/backwards/src/test/ lucene/src/test/org/apache/lucene/util/TestFixedBitSet.java solr/

Author: mikemccand
Date: Sun Jul 17 18:15:49 2011
New Revision: 1147692

URL: http://svn.apache.org/viewvc?rev=1147692&view=rev
Log:
test numBits=0 for FixedBitSet

Modified:
    lucene/dev/branches/branch_3x/   (props changed)
    lucene/dev/branches/branch_3x/lucene/   (props changed)
    lucene/dev/branches/branch_3x/lucene/backwards/   (props changed)
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/   (props changed)
    lucene/dev/branches/branch_3x/lucene/backwards/src/test-framework/   (props changed)
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/util/TestFixedBitSet.java
    lucene/dev/branches/branch_3x/solr/   (props changed)

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/util/TestFixedBitSet.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/util/TestFixedBitSet.java?rev=1147692&r1=1147691&r2=1147692&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/util/TestFixedBitSet.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/util/TestFixedBitSet.java Sun Jul 17 18:15:49 2011
@@ -197,7 +197,8 @@ public class TestFixedBitSet extends Luc
   */
 
   public void testEquals() {
-    final int numBits = random.nextInt(2000) + 1 /* numBits cannot be 0 */;
+    // This test can't handle numBits==0:
+    final int numBits = random.nextInt(2000) + 1;
     FixedBitSet b1 = new FixedBitSet(numBits);
     FixedBitSet b2 = new FixedBitSet(numBits);
     assertTrue(b1.equals(b2));
@@ -219,7 +220,8 @@ public class TestFixedBitSet extends Luc
   }
   
   public void testHashCodeEquals() {
-    final int numBits = random.nextInt(2000);
+    // This test can't handle numBits==0:
+    final int numBits = random.nextInt(2000) + 1;
     FixedBitSet b1 = new FixedBitSet(numBits);
     FixedBitSet b2 = new FixedBitSet(numBits);
     assertTrue(b1.equals(b2));
@@ -237,6 +239,22 @@ public class TestFixedBitSet extends Luc
     }
   } 
 
+  public void testSmallBitSets() {
+    // Make sure size 0-10 bit sets are OK:
+    for(int numBits=0;numBits<10;numBits++) {
+      FixedBitSet b1 = new FixedBitSet(numBits);
+      FixedBitSet b2 = new FixedBitSet(numBits);
+      assertTrue(b1.equals(b2));
+      assertEquals(b1.hashCode(), b2.hashCode());
+      assertEquals(0, b1.cardinality());
+      if (numBits > 0) {
+        b1.set(0, numBits);
+        assertEquals(numBits, b1.cardinality());
+        b1.flip(0, numBits);
+        assertEquals(0, b1.cardinality());
+      }
+    }
+  }
   
   private FixedBitSet makeFixedBitSet(int[] a, int numBits) {
     FixedBitSet bs = new FixedBitSet(numBits);