[jboss-svn-commits] JBL Code SVN: r6677 - labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Oct 7 10:01:52 EDT 2006


Author: mark.proctor at jboss.com
Date: 2006-10-07 10:01:50 -0400 (Sat, 07 Oct 2006)
New Revision: 6677

Added:
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/FactHashTableTest.java
Modified:
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/FieldIndexHashTableTest.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/ObjectHashMapTest.java
Log:
JBRULES-498 Optimised HashMap implementations
-Added empty iterator tests

Added: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/FactHashTableTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/FactHashTableTest.java	2006-10-07 12:47:12 UTC (rev 6676)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/FactHashTableTest.java	2006-10-07 14:01:50 UTC (rev 6677)
@@ -0,0 +1,15 @@
+package org.drools.util;
+
+import junit.framework.TestCase;
+
+import org.drools.util.ObjectHashMap.ObjectEntry;
+
+public class FactHashTableTest extends TestCase {
+    public void testEmptyIterator() {
+        FactHashTable map = new FactHashTable();
+        Iterator it = map.iterator();
+        for( ObjectEntry entry =  ( ObjectEntry ) it.next(); entry != null; entry = ( ObjectEntry ) it.next() ) {
+            fail( "Map is empty, there should be no iteration" );
+        }
+    }
+}
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/FieldIndexHashTableTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/FieldIndexHashTableTest.java	2006-10-07 12:47:12 UTC (rev 6676)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/FieldIndexHashTableTest.java	2006-10-07 14:01:50 UTC (rev 6677)
@@ -17,6 +17,7 @@
 import org.drools.spi.FieldExtractor;
 import org.drools.util.AbstractHashTable.FactEntry;
 import org.drools.util.FieldIndexHashTable.FieldIndexEntry;
+import org.drools.util.ObjectHashMap.ObjectEntry;
 
 public class FieldIndexHashTableTest extends TestCase {
 
@@ -189,9 +190,7 @@
         TestClass c1 = new TestClass( 0,
                                       new TestClass( 20,
                                                      "stilton" ) );
-        
-        
-        
+
         InternalFactHandle ch1 = new DefaultFactHandle( 1,
                                                         c1 );
 
@@ -488,4 +487,28 @@
         return (Entry[]) list.toArray( new Entry[list.size()] );
     }
 
+    public void testEmptyIterator() {
+        final FieldExtractor extractor = new ClassFieldExtractor( Cheese.class,
+                                                                  "type" );
+
+        Column column = new Column( 0,
+                                    new ClassObjectType( Cheese.class ) );
+
+        final Declaration declaration = new Declaration( "typeOfCheese",
+                                                         extractor,
+                                                         column );
+
+        FieldIndexHashTable map = new FieldIndexHashTable( extractor,
+                                                           declaration );
+
+        Cheese stilton = new Cheese( "stilton", 55 );
+        InternalFactHandle stiltonHandle = new DefaultFactHandle( 2,
+                                                                   stilton );
+        
+        Iterator it = map.iterator(  new ReteTuple( stiltonHandle ) );
+        for ( ObjectEntry entry = (ObjectEntry) it.next(); entry != null; entry = (ObjectEntry) it.next() ) {
+            fail( "Map is empty, there should be no iteration" );
+        }
+    }
+
 }

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/ObjectHashMapTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/ObjectHashMapTest.java	2006-10-07 12:47:12 UTC (rev 6676)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/util/ObjectHashMapTest.java	2006-10-07 14:01:50 UTC (rev 6677)
@@ -3,6 +3,7 @@
 import junit.framework.TestCase;
 
 import org.drools.Cheese;
+import org.drools.util.ObjectHashMap.ObjectEntry;
 
 public class ObjectHashMapTest extends TestCase {
 	public void testChechExistsFalse() {
@@ -76,4 +77,12 @@
         
         assertEquals( 0, size);          
     }
+    
+    public void testEmptyIterator() {
+        ObjectHashMap map = new ObjectHashMap();
+        Iterator it = map.iterator();
+        for( ObjectEntry entry =  ( ObjectEntry ) it.next(); entry != null; entry = ( ObjectEntry ) it.next() ) {
+            fail( "Map is empty, there should be no iteration" );
+        }
+    }
 }




More information about the jboss-svn-commits mailing list