Author: j16sdiz
Date: 2009-04-07 07:58:39 +0000 (Tue, 07 Apr 2009)
New Revision: 26594
Modified:
trunk/freenet/test/freenet/support/TimeSortedHashtableTest.java
Log:
More JUnit Test
Modified: trunk/freenet/test/freenet/support/TimeSortedHashtableTest.java
===================================================================
--- trunk/freenet/test/freenet/support/TimeSortedHashtableTest.java
2009-04-07 06:26:03 UTC (rev 26593)
+++ trunk/freenet/test/freenet/support/TimeSortedHashtableTest.java
2009-04-07 07:58:39 UTC (rev 26594)
@@ -80,5 +80,41 @@
assertTrue(tsh.containsValue("KEY1"));
assertFalse(tsh.containsValue("KEY2"));
assertTrue(tsh.containsValue("KEY3"));
+
+ assertEquals(200, tsh.getTime("KEY1"));
+ assertEquals(-1, tsh.getTime("KEY2"));
+ assertEquals(300, tsh.getTime("KEY3"));
}
+
+ public void testPairs() {
+ TimeSortedHashtable<String> tsh = new
TimeSortedHashtable<String>();
+
+ tsh.push("KEY1", 100); // 100=KEY1
+ tsh.push("KEY2", 100); // 100=KEY1, 100=KEY2
+ tsh.push("KEY3", 300); // 100=KEY1, 100=KEY2, 300=KEY3
+
+ Object[] p = tsh.pairsAfter(-1, new String[3]);
+ assertEquals(100, (long) ((Long[]) p[1])[0]);
+ assertEquals("KEY1", ((String[]) p[0])[0]);
+ assertEquals(100, (long) ((Long[]) p[1])[1]);
+ assertEquals("KEY2", ((String[]) p[0])[1]);
+ assertEquals(300, (long) ((Long[]) p[1])[2]);
+ assertEquals("KEY3", ((String[]) p[0])[2]);
+
+ tsh.push("KEY1", 200); // 100=KEY2, 200=KEY1, 300=KEY3
+ p = tsh.pairsAfter(-1, new String[3]);
+ assertEquals(100, (long) ((Long[]) p[1])[0]);
+ assertEquals("KEY2", ((String[]) p[0])[0]);
+ assertEquals(200, (long) ((Long[]) p[1])[1]);
+ assertEquals("KEY1", ((String[]) p[0])[1]);
+ assertEquals(300, (long) ((Long[]) p[1])[2]);
+ assertEquals("KEY3", ((String[]) p[0])[2]);
+
+ tsh.removeBefore(105); // 200=KEY1, 300=KEY3
+ p = tsh.pairsAfter(-1, new String[2]);
+ assertEquals(200, (long) ((Long[]) p[1])[0]);
+ assertEquals("KEY1", ((String[]) p[0])[0]);
+ assertEquals(300, (long) ((Long[]) p[1])[1]);
+ assertEquals("KEY3", ((String[]) p[0])[1]);
+ }
}
_______________________________________________
cvs mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs