[jboss-cvs] JBossCache/tests/functional/org/jboss/cache/marshall ...
Manik Surtani
msurtani at jboss.com
Wed Oct 18 07:07:54 EDT 2006
User: msurtani
Date: 06/10/18 07:07:54
Modified: tests/functional/org/jboss/cache/marshall
RegionManagerTest.java ActiveInactiveTest.java
Log:
* added more tests for the move() API
* added a nodeMoved listener event
* moved some methods from CacheSPI to Cache
Revision Changes Path
1.4 +151 -151 JBossCache/tests/functional/org/jboss/cache/marshall/RegionManagerTest.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: RegionManagerTest.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/tests/functional/org/jboss/cache/marshall/RegionManagerTest.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- RegionManagerTest.java 12 Oct 2006 23:03:57 -0000 1.3
+++ RegionManagerTest.java 18 Oct 2006 11:07:54 -0000 1.4
@@ -1,184 +1,184 @@
package org.jboss.cache.marshall;
import junit.framework.TestCase;
+import org.jboss.cache.Fqn;
+import org.jboss.cache.Region;
+import org.jboss.cache.RegionManager;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
/**
- * Test on MarshRegionManager class.
- *
- * @author Ben Wang, Feb 11, 2004
+ * Test on RegionManager class, from a marshalling perspective.
*/
public class RegionManagerTest extends TestCase
{
- private final String DEFAULT_REGION = "/_default_/";
-
- public RegionManagerTest(String s)
- {
- super(s);
- }
+ private final Fqn DEFAULT_REGION = Fqn.fromString("/_default_/");
+ private RegionManager r;
public void setUp() throws Exception
{
- super.setUp();
+ r = new RegionManager();
}
public void tearDown() throws Exception
{
- super.tearDown();
+ r = null;
}
- /*
- public void testCreateRegion() {
- String fqn1 = "/a/b/c";
- String fqn2 = "/a/b";
- String fqn3 = "/aop";
- MarshRegionManager regionManager = new MarshRegionManager();
- try {
- regionManager.createRegion(DEFAULT_REGION, null);
- regionManager.createRegion(fqn1, null);
- regionManager.createRegion(fqn2, null);
- regionManager.createRegion(fqn3, null);
- } catch (RegionNameConflictException e) {
- fail("Failed to create region");
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
- }
+ public void testGetAllMarshallingRegions()
+ {
+ Fqn fqn1 = Fqn.fromString("/a/b/c");
+ Fqn fqn2 = Fqn.fromString("/a/b");
+ Fqn fqn3 = Fqn.fromString("/aop");
+
+ List<Region> expected = new ArrayList<Region>(4);
+
+ Region region = r.getRegion(DEFAULT_REGION, true);
+ region.registerContextClassLoader(getClass().getClassLoader());
+ assertEquals(DEFAULT_REGION, region.getFqn());
+ expected.add(region);
+
+ region = r.getRegion(fqn1, true);
+ region.registerContextClassLoader(getClass().getClassLoader());
+ assertEquals(fqn1, region.getFqn());
+ expected.add(region);
+
+ region = r.getRegion(fqn2, true);
+ region.registerContextClassLoader(getClass().getClassLoader());
+ assertEquals(fqn2, region.getFqn());
+ expected.add(region);
+
+ region = r.getRegion(fqn3, true);
+ region.registerContextClassLoader(getClass().getClassLoader());
+ assertEquals(fqn3, region.getFqn());
+ expected.add(region);
+
+ // should sort these now ...
+ Collections.sort(expected);
+ Iterator<Region> expectedRegions = expected.iterator();
- MarshRegion[] regions = regionManager.getRegions();
- assertEquals("MarshRegion size ", 4, regions.length);
+ for (Region reg : r.getAllMarshallingRegions())
+ {
+ assertSame("Unexpected region " + reg, expectedRegions.next(), reg);
}
- public void testCreateRegion2() {
- String fqn1 = "/a/b/c";
- String fqn2 = "/a/b/";
- String fqn3 = "/_default_";
-
- MarshRegionManager regionManager = new MarshRegionManager();
- try {
- regionManager.createRegion(fqn1, null);
- regionManager.createRegion(fqn2, null);
- regionManager.createRegion(fqn3, null);
- } catch (RegionNameConflictException e) {
- fail("Failed to create region");
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
- }
-
- MarshRegion[] regions = regionManager.getRegions();
- assertEquals("MarshRegion size ", 3, regions.length);
- assertEquals("MarshRegion 0 ", "/a/b/", regions[1].getFqn());
- assertEquals("MarshRegion 1 ", "/a/b/c/", regions[2].getFqn());
- MarshRegion region = regionManager.getRegion("/a/b/c/d");
- assertNotNull("MarshRegion ", region);
- assertEquals("MarshRegion ", "/a/b/c/", region.getFqn());
- region = regionManager.getRegion("/a/b");
- assertNotNull("MarshRegion ", region);
- assertEquals("MarshRegion ", "/a/b/", region.getFqn());
- region = regionManager.getRegion("/a");
- // Should be default.
- assertNull("MarshRegion ", region);
+ assertFalse("Should not be expecting any more regions", expectedRegions.hasNext());
}
- public void testNoDefaultRegion() {
- String fqn1 = "/a/b/c";
- String fqn2 = "/a/b/";
+ public void testNoDefaultRegion()
+ {
+ Fqn fqn1 = Fqn.fromString("/a/b/c");
+ Fqn fqn2 = Fqn.fromString("/a/b/");
- MarshRegionManager regionManager = new MarshRegionManager();
- try {
- regionManager.createRegion(fqn1, null);
- regionManager.createRegion(fqn2, null);
- } catch (RegionNameConflictException e) {
- fail("Failed to create region");
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
- }
+ r.getRegion(fqn1, true);
+ r.getRegion(fqn2, true);
- MarshRegion region = null;
- try {
- region = regionManager.getRegion("/a");
- } catch (Exception e)
+ Region region = null;
+ try
+ {
+ region = r.getRegion("/a", false);
+ }
+ catch (Exception e)
{
fail("If we don't configure the default region, it still should be ok!");
}
- assertNull("DEfault region is ", region);
+ assertNull("Default region is not null!", region);
}
- public void testRegionConflict() {
- String fqn1 = "/a/b";
- String fqn2 = "/a/b/c";
- String fqn3 = "/aop";
- String fqn4 = "/_default_";
-
- MarshRegionManager regionManager = new MarshRegionManager();
- try {
- regionManager.createRegion(DEFAULT_REGION, null);
- regionManager.createRegion(fqn1, null);
- regionManager.createRegion(fqn2, null);
- regionManager.createRegion(fqn3, null);
- regionManager.createRegion(fqn4, null);
- } catch (RegionNameConflictException e) {
- MarshRegion[] regions = regionManager.getRegions();
- assertEquals("MarshRegion size ", 2, regions.length);
- return;
- }
- fail("testRegionConflict failed");
- }
-
- public void testRegionConflict2() {
- String fqn1 = "/a/b/";
- String fqn2 = "/a/b/c/";
- String fqn3 = "/a/bc";
-
- MarshRegionManager regionManager = new MarshRegionManager();
- try {
- regionManager.createRegion(fqn1, null);
- regionManager.createRegion(fqn2, null);
- regionManager.createRegion(fqn3, null);
- } catch (RegionNameConflictException e) {
- MarshRegion[] regions = regionManager.getRegions();
- assertEquals("MarshRegion size ", 1, regions.length);
- return;
- }
- fail("testRegionConflict failed");
- }
- public void testGetRegion() {
- String fqn1 = "/a/bc";
+ public void testGetParentRegion()
+ {
+ String fqn1 = "/a/b/c";
String fqn2 = "/a/b";
- String fqn3 = "/_default_";
+ String fqn3 = "/a";
- MarshRegionManager regionManager = new MarshRegionManager();
- try {
- regionManager.createRegion(fqn1, null);
- regionManager.createRegion(fqn3, null);
- } catch (RegionNameConflictException e) {
- fail("testRegionConflict3 failed " +e);
- }
+ r.getRegion(fqn1, true);
+ r.getRegion(fqn3, true);
- MarshRegion region = regionManager.getRegion(fqn2);
- assertNull("MarshRegion " , region);
+ Region region = r.getRegion(fqn2, false);
+ assertEquals("Should be the same region as in " + fqn3, r.getRegion(fqn3, false), region);
}
- public void testRemoveRegion() {
- String fqn1 = "/a/bc";
+ public void testRemoveRegion()
+ {
+ String fqn1 = "/a";
String fqn2 = "/a/b";
- String fqn3 = "/_default_";
+ String fqn3 = "/a/b/c";
- MarshRegionManager regionManager = new MarshRegionManager();
- try {
- regionManager.createRegion(fqn1, null);
- regionManager.createRegion(fqn3, null);
- regionManager.removeRegion(fqn1);
- regionManager.createRegion(fqn1, null);
- } catch (RegionNameConflictException e) {
- fail("testRemoveRegion failed " +e);
- }
+ Region r1 = r.getRegion(fqn1, true);
+ Region r2 = r.getRegion(fqn2, true);
+ Region r3 = r.getRegion(fqn3, true);
+
+ assertEquals("Expecting 3 regions", 3, r.getAllRegions().size());
+
+ // test that removal doesn't affect parent traversal.
+ assertEquals(r3, r.getRegion(fqn3, false));
- MarshRegion region = regionManager.getRegion(fqn2);
- assertNull("MarshRegion " , region);
+ r.removeRegion(fqn3);
+
+ assertEquals("Expecting 2 regions", 2, r.getAllRegions().size());
+
+ // test that removal doesn't affect parent traversal.
+ assertEquals("Should have retrieved parent region", r2, r.getRegion(fqn3, false));
+
+ r.removeRegion(fqn2);
+
+ assertEquals("Expecting 1 region", 1, r.getAllRegions().size());
+
+ // test that removal doesn't affect parent traversal.
+ assertEquals("Should have retrieved parent region", r1, r.getRegion(fqn3, false));
+
+ r.removeRegion(fqn1);
+
+ assertEquals("Expecting 0 regions", 0, r.getAllRegions().size());
}
- */
- public void testDummy()
+ public void testGetRegionsMethods()
{
- fail("RE-IMPLEMENT THIS TEST + IMPLEMENT MORE TESTS FOR RegionImpl!");
+ String f1 = "/a", f2 = "/b", f3 = "/c", f4 = "/d";
+
+ r.setDefaultInactive(true);
+
+ Region r1 = r.getRegion(f1, true), r2 = r.getRegion(f2, true), r3 = r.getRegion(f3, true), r4 = r.getRegion(f4, true);
+
+ assertEquals("4 regions should exist", 4, r.getAllRegions().size());
+
+ assertEquals("None of the regions should marshalling or active", 0, r.getAllMarshallingRegions().size());
+
+ r3.registerContextClassLoader(getClass().getClassLoader());
+ r3.activate();
+
+ assertEquals("r3 should be marshalling and active", 1, r.getAllMarshallingRegions().size());
+ assertSame("r3 should be marshalling and active", r3, r.getAllMarshallingRegions().get(0));
+
+ r4.activate(); // but don't se a class loader
+
+ assertEquals("r3 should be marshalling and active", 1, r.getAllMarshallingRegions().size());
+ assertSame("r3 should be marshalling and active", r3, r.getAllMarshallingRegions().get(0));
+
+ r2.registerContextClassLoader(getClass().getClassLoader()); // but don't activate
+
+ assertEquals("r3 should be marshalling and active", 1, r.getAllMarshallingRegions().size());
+ assertSame("r3 should be marshalling and active", r3, r.getAllMarshallingRegions().get(0));
+
+ r2.activate();
+
+ assertEquals("r2 + r3 should be marshalling and active", 2, r.getAllMarshallingRegions().size());
+ assertSame("r2 should be marshalling and active", r2, r.getAllMarshallingRegions().get(0));
+ assertSame("r3 should be marshalling and active", r3, r.getAllMarshallingRegions().get(1));
+
+ r4.registerContextClassLoader(getClass().getClassLoader());
+
+ assertEquals("r2 + r3 + r4 should be marshalling and active", 3, r.getAllMarshallingRegions().size());
+ assertSame("r2 should be marshalling and active", r2, r.getAllMarshallingRegions().get(0));
+ assertSame("r3 should be marshalling and active", r3, r.getAllMarshallingRegions().get(1));
+ assertSame("r4 should be marshalling and active", r4, r.getAllMarshallingRegions().get(2));
+
}
+
}
1.10 +11 -11 JBossCache/tests/functional/org/jboss/cache/marshall/ActiveInactiveTest.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: ActiveInactiveTest.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/tests/functional/org/jboss/cache/marshall/ActiveInactiveTest.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- ActiveInactiveTest.java 12 Oct 2006 23:03:57 -0000 1.9
+++ ActiveInactiveTest.java 18 Oct 2006 11:07:54 -0000 1.10
@@ -15,7 +15,7 @@
import java.lang.reflect.Method;
/**
- * Tests the "activate/inactivate" functionality of LegacyTreeCacheMarshaller.
+ * Tests the "activate/deactivate" functionality of LegacyTreeCacheMarshaller.
*
* @author <a href="mailto://brian.stansberry@jboss.com">Brian Stansberry</a>
* @version $Revision$
@@ -30,7 +30,7 @@
VersionAwareMarshaller testee = new VersionAwareMarshaller(rman, false, true, Version.getVersionString(Version.getVersionShort()));
assertFalse("Root is not active", testee.isInactive("/"));
- rman.inactivate("/a");
+ rman.deactivate("/a");
assertFalse("Root is not active after inactivating subtree",
testee.isInactive("/"));
@@ -40,7 +40,7 @@
rman.activate("/a/b");
- rman.inactivate("/");
+ rman.deactivate("/");
assertTrue("Root is active", testee.isInactive("/"));
}
@@ -55,11 +55,11 @@
assertTrue("Root is not inactive after activating subtree",
testee.isInactive("/"));
- rman.inactivate("/a");
+ rman.deactivate("/a");
assertTrue("Root is not inactive after inactivating subtree",
testee.isInactive("/"));
- rman.inactivate("/a/b");
+ rman.deactivate("/a/b");
rman.activate("/");
assertFalse("Root is not active", testee.isInactive("/"));
@@ -75,7 +75,7 @@
assertFalse("/a is not active after activating",
defaultActive.isInactive("/a"));
- rman.inactivate("/a");
+ rman.deactivate("/a");
rman.activate("/a");
assertFalse("/a is not active after reactivating",
defaultActive.isInactive("/a"));
@@ -90,7 +90,7 @@
assertFalse("/i/k is not active after activating /i",
defaultInactive.isInactive("/i/k"));
- rman.inactivate("/i");
+ rman.deactivate("/i");
rman.activate("/i");
assertFalse("/i is not active after reactivating",
defaultInactive.isInactive("/i"));
@@ -102,12 +102,12 @@
rman.setDefaultInactive(true);
VersionAwareMarshaller defaultInactive = new VersionAwareMarshaller(rman, true, true, Version.getVersionString(Version.getVersionShort()));
- rman.inactivate("/i");
+ rman.deactivate("/i");
assertTrue("/i is not inactive after inactivating",
defaultInactive.isInactive("/i"));
rman.activate("/i");
- rman.inactivate("/i");
+ rman.deactivate("/i");
assertTrue("/i is not inactive after re-inactivating",
defaultInactive.isInactive("/i"));
@@ -115,14 +115,14 @@
rman.setDefaultInactive(false);
VersionAwareMarshaller defaultActive = new VersionAwareMarshaller(rman2, false, true, Version.getVersionString(Version.getVersionShort()));
- rman2.inactivate("/a");
+ rman2.deactivate("/a");
assertTrue("/a is not inactive after inactivating",
defaultInactive.isInactive("/a"));
assertTrue("/a/b is not inactive after inactivating /a",
defaultInactive.isInactive("/a/b"));
rman2.activate("/a");
- rman2.inactivate("/a");
+ rman2.deactivate("/a");
assertTrue("/a is not inactive after re-inactivating",
defaultInactive.isInactive("/a"));
}
More information about the jboss-cvs-commits
mailing list