You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by mo...@apache.org on 2002/05/08 18:07:06 UTC
cvs commit: jakarta-commons/collections/src/test/org/apache/commons/collections TestLRUMap.java
morgand 02/05/08 09:07:06
Modified: collections/src/test/org/apache/commons/collections
TestLRUMap.java
Log:
test to make sure that gets promote keys to the Most Recently Used
position
Revision Changes Path
1.18 +31 -4 jakarta-commons/collections/src/test/org/apache/commons/collections/TestLRUMap.java
Index: TestLRUMap.java
===================================================================
RCS file: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/TestLRUMap.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- TestLRUMap.java 22 Feb 2002 22:26:01 -0000 1.17
+++ TestLRUMap.java 8 May 2002 16:07:05 -0000 1.18
@@ -1,7 +1,7 @@
/*
- * $Header: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/TestLRUMap.java,v 1.17 2002/02/22 22:26:01 morgand Exp $
- * $Revision: 1.17 $
- * $Date: 2002/02/22 22:26:01 $
+ * $Header: /home/cvs/jakarta-commons/collections/src/test/org/apache/commons/collections/TestLRUMap.java,v 1.18 2002/05/08 16:07:05 morgand Exp $
+ * $Revision: 1.18 $
+ * $Date: 2002/05/08 16:07:05 $
*
* ====================================================================
*
@@ -65,6 +65,7 @@
import junit.framework.TestCase;
import junit.framework.TestSuite;
import java.util.ArrayList;
+import java.util.Iterator;
import java.util.Map;
import java.util.HashMap;
@@ -72,7 +73,7 @@
*
* @author <a href="mailto:jstrachan@apache.org">James Strachan</a>
* @author <a href="mailto:morgand@apache.org">Morgan Delagrange</a>
- * @version $Id: TestLRUMap.java,v 1.17 2002/02/22 22:26:01 morgand Exp $
+ * @version $Id: TestLRUMap.java,v 1.18 2002/05/08 16:07:05 morgand Exp $
*/
public class TestLRUMap extends TestSequencedHashMap
{
@@ -154,6 +155,32 @@
assertTrue("map should have size = 3, but actually = " + map.size(),
map.size() == 3);
+ }
+
+ public void testGetPromotion() {
+ LRUMap map = new LRUMap(3);
+ map.put("1","1");
+ map.put("2","2");
+ map.put("3","3");
+ // LRU is now 1 (then 2 then 3)
+
+ // promote 1 to top
+ // eviction order is now 2,3,1
+ map.get("1");
+
+ // add another value, forcing a remove
+ // 2 should be evicted (then 3,1,4)
+ map.put("4","4");
+
+ Iterator keyIterator = map.keySet().iterator();
+ Object[] keys = new Object[3];
+ for (int i = 0; keyIterator.hasNext() ; ++i) {
+ keys[i] = keyIterator.next();
+ }
+
+ assertTrue("first evicted should be 3, was " + keys[0], keys[0].equals("3"));
+ assertTrue("second evicted should be 1, was " + keys[1], keys[1].equals("1"));
+ assertTrue("third evicted should be 4, was " + keys[2], keys[2].equals("4"));
}
/**
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>