[jboss-cvs] JBossAS SVN: r74490 - in trunk/testsuite/src/main/org/jboss/test/cluster: testutil and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Jun 12 11:48:57 EDT 2008


Author: bstansberry at jboss.com
Date: 2008-06-12 11:48:57 -0400 (Thu, 12 Jun 2008)
New Revision: 74490

Modified:
   trunk/testsuite/src/main/org/jboss/test/cluster/multicfg/web/field/test/StateTransferTestCase.java
   trunk/testsuite/src/main/org/jboss/test/cluster/testutil/SessionTestUtil.java
   trunk/testsuite/src/main/org/jboss/test/cluster/web/CacheHelper.java
   trunk/testsuite/src/main/org/jboss/test/cluster/web/CacheHelperMBean.java
Log:
[JBAS-4646] Fix StateTransferTestCase

Modified: trunk/testsuite/src/main/org/jboss/test/cluster/multicfg/web/field/test/StateTransferTestCase.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/cluster/multicfg/web/field/test/StateTransferTestCase.java	2008-06-12 15:24:53 UTC (rev 74489)
+++ trunk/testsuite/src/main/org/jboss/test/cluster/multicfg/web/field/test/StateTransferTestCase.java	2008-06-12 15:48:57 UTC (rev 74490)
@@ -196,11 +196,24 @@
       // Stop the war on server0
       undeploy(adaptor0_, getWarName() + ".war");
       
-      // Confirm there are no sessions in the server0 cache
-      sessions = SessionTestUtil.getSessionIds(adaptor0_, warFqn_);
-      
-      assertEquals("server0 has no cached sessions", 0, sessions.size());
-      
-      getLog().debug("Server0 has no cached sessions");
+      boolean buddyRepl = SessionTestUtil.isBuddyReplication(adaptor0_);
+      if (buddyRepl)
+      {
+         sessions = SessionTestUtil.getSessionIds(adaptor0_, warFqn_);
+         
+         assertEquals("server0 has three cached sessions", 3, sessions.size());
+         sessions = SessionTestUtil.getSessionIds(adaptor0_, warFqn_, false);
+         
+         assertEquals("server0 has no cached sessions outside buddy backup", 0, sessions.size());
+      }
+      else
+      {
+         // Confirm there are no sessions in the server0 cache
+         sessions = SessionTestUtil.getSessionIds(adaptor0_, warFqn_);
+         
+         assertEquals("server0 has no cached sessions", 0, sessions.size());
+         
+         getLog().debug("Server0 has no cached sessions");
+      }
    }
 }

Modified: trunk/testsuite/src/main/org/jboss/test/cluster/testutil/SessionTestUtil.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/cluster/testutil/SessionTestUtil.java	2008-06-12 15:24:53 UTC (rev 74489)
+++ trunk/testsuite/src/main/org/jboss/test/cluster/testutil/SessionTestUtil.java	2008-06-12 15:48:57 UTC (rev 74490)
@@ -63,7 +63,8 @@
  */
 public class SessionTestUtil
 {  
-   private static final String[] TYPES = { String.class.getName() };
+   private static final String[] STRING_ONLY_TYPES = { String.class.getName() };
+   private static final String[] STRING_BOOLEAN_TYPES = { String.class.getName(), boolean.class.getName() };
    private static final String CONFIG_LOCATION = "cluster/http/jboss-web-test-service.xml";
    
    public static JBossCacheManager createManager(String warName, int maxInactiveInterval, 
@@ -166,7 +167,7 @@
       return adaptor.invoke(CacheHelper.OBJECT_NAME, 
                             "getSessionVersion", 
                             new Object[] { sessionFqn }, 
-                            TYPES);
+                            STRING_ONLY_TYPES);
    }
 
    public static Object getBuddySessionVersion(MBeanServerConnection adaptor, String sessionFqn) throws Exception
@@ -175,7 +176,7 @@
       return adaptor.invoke(CacheHelper.OBJECT_NAME, 
                             "getBuddySessionVersion", 
                             new Object[] { sessionFqn }, 
-                            TYPES);
+                            STRING_ONLY_TYPES);
    }
    
    public static void setCacheConfigName(MBeanServerConnection adaptor, String cacheConfigName, boolean usePojoCache) throws Exception
@@ -191,7 +192,7 @@
       Boolean b = (Boolean) adaptor.invoke(CacheHelper.OBJECT_NAME, 
                                            "exists", 
                                            new Object[] { fqn }, 
-                                           TYPES);
+                                           STRING_ONLY_TYPES);
       return b.booleanValue();
    }
    
@@ -200,9 +201,26 @@
       return (Set) adaptor.invoke(CacheHelper.OBJECT_NAME, 
                            "getSessionIds", 
                            new Object[] { warFqn }, 
-                           TYPES);
+                           STRING_ONLY_TYPES);
    }
    
+   public static Set getSessionIds(MBeanServerConnection adaptor, String warFqn, boolean includeBuddies) throws Exception
+   {
+      return (Set) adaptor.invoke(CacheHelper.OBJECT_NAME, 
+                           "getSessionIds", 
+                           new Object[] { warFqn, Boolean.valueOf(includeBuddies) }, 
+                           STRING_BOOLEAN_TYPES);
+   }
+   
+   public static boolean isBuddyReplication(MBeanServerConnection adaptor) throws Exception
+   {
+
+      return ((Boolean) adaptor.invoke(CacheHelper.OBJECT_NAME, 
+                           "isBuddyReplication", 
+                           new Object[] { }, 
+                           new String[]{})).booleanValue();
+   }
+   
    public static void leaveHelperOnServer(MBeanServerConnection adaptor) throws Exception
    {
       adaptor.invoke(CacheHelper.OBJECT_NAME, 

Modified: trunk/testsuite/src/main/org/jboss/test/cluster/web/CacheHelper.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/cluster/web/CacheHelper.java	2008-06-12 15:24:53 UTC (rev 74489)
+++ trunk/testsuite/src/main/org/jboss/test/cluster/web/CacheHelper.java	2008-06-12 15:48:57 UTC (rev 74490)
@@ -34,6 +34,7 @@
 import org.jboss.cache.Fqn;
 import org.jboss.cache.Node;
 import org.jboss.cache.buddyreplication.BuddyManager;
+import org.jboss.cache.config.BuddyReplicationConfig;
 import org.jboss.ha.framework.server.CacheManagerLocator;
 import org.jboss.ha.framework.server.PojoCacheManager;
 import org.jboss.ha.framework.server.PojoCacheManagerLocator;
@@ -135,8 +136,19 @@
       return getCache().getRoot().hasChild(Fqn.fromString(fqn));
    }
    
+   public boolean isBuddyReplication()
+   {
+      BuddyReplicationConfig brc = getCache().getConfiguration().getBuddyReplicationConfig();
+      return (brc != null && brc.isEnabled());
+   }
+   
    public Set getSessionIds(String warFqn) throws Exception
    {
+      return getSessionIds(warFqn, true);
+   }
+   
+   public Set getSessionIds(String warFqn, boolean includeBuddies) throws Exception
+   {
       Set result = new HashSet();
       
       Fqn fqn = Fqn.fromString(warFqn);
@@ -146,19 +158,21 @@
          result.addAll(main.getChildrenNames());
       }
       
-      //    Check in the buddy backup tree
-      
-      Set buddies = getBuddyBackupRoots();
-      for (Iterator iter = buddies.iterator(); iter.hasNext();)
+      if (includeBuddies)
       {
-         Node buddy = (Node) iter.next();
-         Node warRoot = buddy.getChild(fqn);
-         if (warRoot != null)
+         //    Check in the buddy backup tree
+         
+         Set buddies = getBuddyBackupRoots();
+         for (Iterator iter = buddies.iterator(); iter.hasNext();)
          {
-            result.addAll(warRoot.getChildrenNames());
+            Node buddy = (Node) iter.next();
+            Node warRoot = buddy.getChild(fqn);
+            if (warRoot != null)
+            {
+               result.addAll(warRoot.getChildrenNames());
+            }
          }
       }
-      
       return result;
    }
    

Modified: trunk/testsuite/src/main/org/jboss/test/cluster/web/CacheHelperMBean.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/cluster/web/CacheHelperMBean.java	2008-06-12 15:24:53 UTC (rev 74489)
+++ trunk/testsuite/src/main/org/jboss/test/cluster/web/CacheHelperMBean.java	2008-06-12 15:48:57 UTC (rev 74490)
@@ -12,6 +12,10 @@
 
    Set getSessionIds(String warFqn) throws Exception;
    
+   Set getSessionIds(String warFqn, boolean includeBuddies) throws Exception;
+   
+   boolean isBuddyReplication();
+   
    boolean exists(String fqn);
    
    Set getSSOIds() throws Exception;




More information about the jboss-cvs-commits mailing list