[jboss-cvs] JBossCache/tests/functional/org/jboss/cache/loader ...
Manik Surtani
msurtani at jboss.com
Wed Oct 11 06:02:07 EDT 2006
User: msurtani
Date: 06/10/11 06:02:07
Modified: tests/functional/org/jboss/cache/loader
TcpCacheLoaderTest.java JdbmCacheLoaderTest.java
CacheLoaderTestsBase.java
LocalDelegatingCacheLoaderTest.java
FileCacheLoaderTest.java
Removed: tests/functional/org/jboss/cache/loader
ExtendedCacheLoaderTestsBase.java
Log:
* Removed ExtendedCacheLoader base test
* Merged store and load tests into CacheLoaderTestBase
* Fixed bug in Fqn.getFqnChild(), added better javadocs and unit tests
Revision Changes Path
1.8 +11 -1 JBossCache/tests/functional/org/jboss/cache/loader/TcpCacheLoaderTest.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: TcpCacheLoaderTest.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/tests/functional/org/jboss/cache/loader/TcpCacheLoaderTest.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- TcpCacheLoaderTest.java 7 Sep 2006 13:52:29 -0000 1.7
+++ TcpCacheLoaderTest.java 11 Oct 2006 10:02:07 -0000 1.8
@@ -8,7 +8,7 @@
* Tests the TcpDelegatingCacheLoader
*
* @author Bela Ban
- * @version $Id: TcpCacheLoaderTest.java,v 1.7 2006/09/07 13:52:29 msurtani Exp $
+ * @version $Id: TcpCacheLoaderTest.java,v 1.8 2006/10/11 10:02:07 msurtani Exp $
*/
public class TcpCacheLoaderTest extends CacheLoaderTestsBase
{
@@ -52,6 +52,16 @@
runner.start();
}
+ public void testPartialLoadAndStore()
+ {
+ // do nothing
+ }
+
+ public void testBuddyBackupStore()
+ {
+ // do nothing
+ }
+
protected void configureCache() throws Exception
{
1.4 +35 -25 JBossCache/tests/functional/org/jboss/cache/loader/JdbmCacheLoaderTest.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: JdbmCacheLoaderTest.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/tests/functional/org/jboss/cache/loader/JdbmCacheLoaderTest.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- JdbmCacheLoaderTest.java 20 Jul 2006 08:05:18 -0000 1.3
+++ JdbmCacheLoaderTest.java 11 Oct 2006 10:02:07 -0000 1.4
@@ -7,11 +7,13 @@
import java.io.FileFilter;
/**
- * Tests {@link JdbmCacheLoader}.
+ * Tests {@link org.jboss.cache.loader.jdbm.JdbmCacheLoader}.
+ *
* @author Elias Ross
- * @version $Id: JdbmCacheLoaderTest.java,v 1.3 2006/07/20 08:05:18 msurtani Exp $
+ * @version $Id: JdbmCacheLoaderTest.java,v 1.4 2006/10/11 10:02:07 msurtani Exp $
*/
-public class JdbmCacheLoaderTest extends ExtendedCacheLoaderTestsBase {
+public class JdbmCacheLoaderTest extends CacheLoaderTestsBase
+{
private int counter = 0;
private String tmp_location = System.getProperty("java.io.tmpdir", "/tmp");
@@ -22,20 +24,27 @@
if (!dir.exists()) dir.mkdirs();
}
- protected void configureCache() throws Exception {
+ protected void configureCache() throws Exception
+ {
- class MyFilter implements FileFilter {
- public boolean accept(File file) {
+ class MyFilter implements FileFilter
+ {
+ public boolean accept(File file)
+ {
return file.getName().endsWith(".db");
}
}
- File[] files=dir.listFiles(new MyFilter());
- if (files != null) {
- for (int i = 0; i < files.length; i += 1) {
+ File[] files = dir.listFiles(new MyFilter());
+ if (files != null)
+ {
+ for (int i = 0; i < files.length; i += 1)
+ {
File file = files[i];
- if (file.isFile()) {
- if (!file.delete()) {
+ if (file.isFile())
+ {
+ if (!file.delete())
+ {
System.err.println("Unable to delete: " + file);
}
}
@@ -45,7 +54,8 @@
cache.getConfiguration().setCacheLoaderConfiguration(getSingleCacheLoaderConfig("", "org.jboss.cache.loader.jdbm.JdbmCacheLoader", "", false, true, false));
}
- public static Test suite() {
+ public static Test suite()
+ {
return new TestSuite(JdbmCacheLoaderTest.class);
}
1.32 +120 -3 JBossCache/tests/functional/org/jboss/cache/loader/CacheLoaderTestsBase.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: CacheLoaderTestsBase.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/tests/functional/org/jboss/cache/loader/CacheLoaderTestsBase.java,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -b -r1.31 -r1.32
--- CacheLoaderTestsBase.java 22 Sep 2006 16:27:56 -0000 1.31
+++ CacheLoaderTestsBase.java 11 Oct 2006 10:02:07 -0000 1.32
@@ -7,6 +7,7 @@
import org.jboss.cache.Fqn;
import org.jboss.cache.Modification;
import org.jboss.cache.TreeCache;
+import org.jboss.cache.buddyreplication.BuddyManager;
import org.jboss.cache.config.Configuration;
import org.jboss.cache.statetransfer.StateTransferManager;
import org.jboss.cache.transaction.DummyTransactionManager;
@@ -30,7 +31,7 @@
* Commons tests for all CacheLoaders
*
* @author Bela Ban
- * @version $Id: CacheLoaderTestsBase.java,v 1.31 2006/09/22 16:27:56 msurtani Exp $
+ * @version $Id: CacheLoaderTestsBase.java,v 1.32 2006/10/11 10:02:07 msurtani Exp $
*/
abstract public class CacheLoaderTestsBase extends AbstractCacheLoaderTestBase
{
@@ -40,6 +41,14 @@
CacheLoader loader = null;
Transaction tx = null;
static final Fqn FQN = new Fqn("key");
+ static final Fqn SUBTREE_FQN = new Fqn(FQN, "subtree");
+
+ static final Fqn BUDDY_BASE = new Fqn(BuddyManager.BUDDY_BACKUP_SUBTREE_FQN, "test");
+
+ static final Fqn BUDDY_PLUS_FQN = new Fqn(BUDDY_BASE, FQN);
+
+ static final Fqn BUDDY_PLUS_SUBTREE_FQN = new Fqn(BUDDY_BASE, SUBTREE_FQN);
+
public CacheLoaderTestsBase(String name)
{
@@ -143,12 +152,14 @@
assertEquals(new Integer(20), retval);
}
- public void testPut2() throws CacheException
+ public void testPut2() throws Exception
{
final String NODE = "/a/b/c";
+ assertNull(loader.get(Fqn.fromString(NODE)));
final String KEY = "key";
Object retval = null;
cache.remove(NODE);
+ assertNull(loader.get(Fqn.fromString(NODE)));
addDelay();
retval = cache.put(NODE, KEY, new Integer(10));
assertNull(retval);
@@ -1827,4 +1838,110 @@
}
+ /**
+ * Test load/store state.
+ */
+ public void testPartialLoadAndStore()
+ throws Exception
+ {
+
+ /* Empty state. */
+ loader.remove(Fqn.fromString("/"));
+ // assertEquals(0, loader.loadEntireState().length);
+// loader.storeEntireState(new byte[0]);
+// assertEquals(0, loader.loadEntireState().length);
+// loader.storeEntireState(null);
+// assertEquals(0, loader.loadEntireState().length);
+// assertEquals(null, loader.get(FQN));
+
+ /* Use a complex object to ensure that the class catalog is used. */
+ Complex c1 = new Complex();
+ Complex c2 = new Complex(c1);
+ Complex c3 = new Complex();
+ Complex c4 = new Complex(c3);
+
+ /* Add objects. */
+ loader.put(FQN, new Integer(1), c1);
+ loader.put(FQN, new Integer(2), c2);
+ loader.put(SUBTREE_FQN, new Integer(1), c3);
+ loader.put(SUBTREE_FQN, new Integer(2), c4);
+ addDelay();
+ assertEquals(c1, loader.get(FQN).get(new Integer(1)));
+ assertEquals(c2, loader.get(FQN).get(new Integer(2)));
+ assertEquals(2, loader.get(FQN).size());
+ assertEquals(c3, loader.get(SUBTREE_FQN).get(new Integer(1)));
+ assertEquals(c4, loader.get(SUBTREE_FQN).get(new Integer(2)));
+ assertEquals(2, loader.get(SUBTREE_FQN).size());
+
+ /* Save state. */
+ ByteArrayOutputStream baos = new ByteArrayOutputStream(1024);
+ MarshalledValueOutputStream os = new MarshalledValueOutputStream(baos);
+ loader.loadState(SUBTREE_FQN, os);
+ os.writeObject(StateTransferManager.STREAMING_DELIMETER_NODE);
+ os.close();
+ assertTrue(baos.size() > 0);
+ loader.remove(SUBTREE_FQN);
+
+ /* Restore state. */
+
+ ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
+ MarshalledValueInputStream is = new MarshalledValueInputStream(bais);
+ loader.storeState(SUBTREE_FQN, is);
+ is.close();
+ addDelay();
+ assertEquals(c1, loader.get(FQN).get(new Integer(1)));
+ assertEquals(c2, loader.get(FQN).get(new Integer(2)));
+ assertEquals(2, loader.get(FQN).size());
+ assertEquals(c3, loader.get(SUBTREE_FQN).get(new Integer(1)));
+ assertEquals(c4, loader.get(SUBTREE_FQN).get(new Integer(2)));
+ assertEquals(2, loader.get(SUBTREE_FQN).size());
+ }
+
+ public void testBuddyBackupStore() throws Exception
+ {
+ /* Empty state. */
+ loader.remove(Fqn.ROOT);
+
+ /* Use a complex object to ensure that the class catalog is used. */
+ Complex c1 = new Complex();
+ Complex c2 = new Complex(c1);
+ Complex c3 = new Complex();
+ Complex c4 = new Complex(c3);
+
+ /* Add objects. */
+ loader.put(FQN, new Integer(1), c1);
+ loader.put(FQN, new Integer(2), c2);
+ loader.put(SUBTREE_FQN, new Integer(1), c3);
+ loader.put(SUBTREE_FQN, new Integer(2), c4);
+ addDelay();
+ assertEquals(c1, loader.get(FQN).get(new Integer(1)));
+ assertEquals(c2, loader.get(FQN).get(new Integer(2)));
+ assertEquals(2, loader.get(FQN).size());
+ assertEquals(c3, loader.get(SUBTREE_FQN).get(new Integer(1)));
+ assertEquals(c4, loader.get(SUBTREE_FQN).get(new Integer(2)));
+ assertEquals(2, loader.get(SUBTREE_FQN).size());
+
+ /* Save state. */
+ ByteArrayOutputStream baos = new ByteArrayOutputStream(1024);
+ MarshalledValueOutputStream os = new MarshalledValueOutputStream(baos);
+ loader.loadState(FQN, os);
+ os.writeObject(StateTransferManager.STREAMING_DELIMETER_NODE);
+ os.close();
+ assertTrue(baos.size() > 0);
+
+ /* Restore state. */
+ ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
+ MarshalledValueInputStream is = new MarshalledValueInputStream(bais);
+ loader.storeState(BUDDY_BASE, is);
+ is.close();
+ addDelay();
+ assertEquals(c1, loader.get(BUDDY_PLUS_FQN).get(new Integer(1)));
+ assertEquals(c2, loader.get(BUDDY_PLUS_FQN).get(new Integer(2)));
+ assertEquals(2, loader.get(BUDDY_PLUS_FQN).size());
+ assertEquals(c3, loader.get(BUDDY_PLUS_SUBTREE_FQN).get(new Integer(1)));
+ assertEquals(c4, loader.get(BUDDY_PLUS_SUBTREE_FQN).get(new Integer(2)));
+ assertEquals(2, loader.get(BUDDY_PLUS_SUBTREE_FQN).size());
+
+ }
+
}
1.12 +10 -0 JBossCache/tests/functional/org/jboss/cache/loader/LocalDelegatingCacheLoaderTest.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: LocalDelegatingCacheLoaderTest.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/tests/functional/org/jboss/cache/loader/LocalDelegatingCacheLoaderTest.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- LocalDelegatingCacheLoaderTest.java 6 Sep 2006 15:30:58 -0000 1.11
+++ LocalDelegatingCacheLoaderTest.java 11 Oct 2006 10:02:07 -0000 1.12
@@ -37,6 +37,16 @@
delegating_cache.destroy();
}
+ public void testPartialLoadAndStore()
+ {
+ // do nothing
+ }
+
+ public void testBuddyBackupStore()
+ {
+ // do nothing
+ }
+
public static Test suite()
{
1.9 +8 -4 JBossCache/tests/functional/org/jboss/cache/loader/FileCacheLoaderTest.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: FileCacheLoaderTest.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/tests/functional/org/jboss/cache/loader/FileCacheLoaderTest.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- FileCacheLoaderTest.java 20 Jul 2006 10:31:30 -0000 1.8
+++ FileCacheLoaderTest.java 11 Oct 2006 10:02:07 -0000 1.9
@@ -9,18 +9,22 @@
* Date: Jun 9, 2004
* Time: 9:05:19 AM
*/
-public class FileCacheLoaderTest extends ExtendedCacheLoaderTestsBase {
+public class FileCacheLoaderTest extends CacheLoaderTestsBase
+{
- protected void configureCache() throws Exception {
+ protected void configureCache() throws Exception
+ {
cache.getConfiguration().setCacheLoaderConfiguration(getSingleCacheLoaderConfig("", "org.jboss.cache.loader.FileCacheLoader", "", false, true, false));
}
- public static Test suite() {
+ public static Test suite()
+ {
return new TestSuite(FileCacheLoaderTest.class);
}
- public static void main(String[] args) {
+ public static void main(String[] args)
+ {
junit.textui.TestRunner.run(suite());
}
More information about the jboss-cvs-commits
mailing list