[infinispan-commits] Infinispan SVN: r1773 - trunk/core/src/test/java/org/infinispan/distribution/rehash.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Tue May 11 07:25:10 EDT 2010


Author: manik.surtani at jboss.com
Date: 2010-05-11 07:25:09 -0400 (Tue, 11 May 2010)
New Revision: 1773

Modified:
   trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentJoinTest.java
   trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentNonOverlappingLeaveTest.java
   trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentOverlappingLeaveTest.java
   trunk/core/src/test/java/org/infinispan/distribution/rehash/RehashTestBase.java
   trunk/core/src/test/java/org/infinispan/distribution/rehash/SingleJoinTest.java
   trunk/core/src/test/java/org/infinispan/distribution/rehash/SingleLeaveTest.java
Log:
Improved tests

Modified: trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentJoinTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentJoinTest.java	2010-05-11 10:48:53 UTC (rev 1772)
+++ trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentJoinTest.java	2010-05-11 11:25:09 UTC (rev 1773)
@@ -8,6 +8,7 @@
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
+
 import static java.util.concurrent.TimeUnit.SECONDS;
 
 @Test(groups = "functional", testName = "distribution.rehash.ConcurrentJoinTest")
@@ -18,15 +19,26 @@
 
    final int numJoiners = 4;
 
-   void performRehashEvent() {
-      joinerManagers = new ArrayList<CacheManager>(numJoiners);
-      joiners = new ArrayList<Cache<Object, String>>(numJoiners);
-      for (int i = 0; i < numJoiners; i++) {
-         CacheManager joinerManager = addClusterEnabledCacheManager();
-         joinerManager.defineConfiguration(cacheName, configuration);
-         Cache<Object, String> joiner = joinerManager.getCache(cacheName);
-         joinerManagers.add(joinerManager);
-         joiners.add(joiner);
+   void performRehashEvent(boolean offline) {
+      Runnable runnable = new Runnable() {
+         public void run() {
+
+            joinerManagers = new ArrayList<CacheManager>(numJoiners);
+            joiners = new ArrayList<Cache<Object, String>>(numJoiners);
+            for (int i = 0; i < numJoiners; i++) {
+               CacheManager joinerManager = addClusterEnabledCacheManager();
+               joinerManager.defineConfiguration(cacheName, configuration);
+               Cache<Object, String> joiner = joinerManager.getCache(cacheName);
+               joinerManagers.add(joinerManager);
+               joiners.add(joiner);
+            }
+         }
+      };
+
+      if (offline) {
+         new Thread(runnable).start();
+      } else {
+         runnable.run();
       }
    }
 

Modified: trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentNonOverlappingLeaveTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentNonOverlappingLeaveTest.java	2010-05-11 10:48:53 UTC (rev 1772)
+++ trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentNonOverlappingLeaveTest.java	2010-05-11 11:25:09 UTC (rev 1773)
@@ -11,7 +11,7 @@
 public class ConcurrentNonOverlappingLeaveTest extends RehashLeaveTestBase {
    Address l1, l2;
 
-   void performRehashEvent() {
+   void performRehashEvent(boolean offline) {
       l1 = addressOf(c2);
       l2 = addressOf(c4);
 

Modified: trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentOverlappingLeaveTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentOverlappingLeaveTest.java	2010-05-11 10:48:53 UTC (rev 1772)
+++ trunk/core/src/test/java/org/infinispan/distribution/rehash/ConcurrentOverlappingLeaveTest.java	2010-05-11 11:25:09 UTC (rev 1773)
@@ -11,7 +11,7 @@
 public class ConcurrentOverlappingLeaveTest extends RehashLeaveTestBase {
    Address l1, l2;
 
-   void performRehashEvent() {
+   void performRehashEvent(boolean offline) {
       l1 = addressOf(c3);
       l2 = addressOf(c4);
 

Modified: trunk/core/src/test/java/org/infinispan/distribution/rehash/RehashTestBase.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/distribution/rehash/RehashTestBase.java	2010-05-11 10:48:53 UTC (rev 1772)
+++ trunk/core/src/test/java/org/infinispan/distribution/rehash/RehashTestBase.java	2010-05-11 11:25:09 UTC (rev 1773)
@@ -31,8 +31,9 @@
 
    /**
     * This is overridden by subclasses.  Could typically be a JOIN or LEAVE event.
+    * @param offline
     */
-   abstract void performRehashEvent();
+   abstract void performRehashEvent(boolean offline);
 
    /**
     * Blocks until a rehash completes.
@@ -66,7 +67,7 @@
       List<MagicKey> keys = init();
 
       log.info("Invoking rehash event");
-      performRehashEvent();
+      performRehashEvent(false);
 
       waitForRehashCompletion();
       log.info("Rehash complete");
@@ -114,7 +115,7 @@
       th.start();
 
       log.info("Invoking rehash event");
-      performRehashEvent();
+      performRehashEvent(true);
       l.countDown();
       th.join();
 
@@ -162,7 +163,7 @@
       latch.countDown();
 
       log.info("Invoking rehash event");
-      performRehashEvent();
+      performRehashEvent(false);
 
       for (Updater u : updaters) u.complete();
       for (Updater u : updaters) u.join();

Modified: trunk/core/src/test/java/org/infinispan/distribution/rehash/SingleJoinTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/distribution/rehash/SingleJoinTest.java	2010-05-11 10:48:53 UTC (rev 1772)
+++ trunk/core/src/test/java/org/infinispan/distribution/rehash/SingleJoinTest.java	2010-05-11 11:25:09 UTC (rev 1773)
@@ -11,7 +11,7 @@
    CacheManager joinerManager;
    Cache<Object, String> joiner;
 
-   void performRehashEvent() {
+   void performRehashEvent(boolean offline) {
       joinerManager = addClusterEnabledCacheManager();
       joinerManager.defineConfiguration(cacheName, configuration);
       joiner = joinerManager.getCache(cacheName);

Modified: trunk/core/src/test/java/org/infinispan/distribution/rehash/SingleLeaveTest.java
===================================================================
--- trunk/core/src/test/java/org/infinispan/distribution/rehash/SingleLeaveTest.java	2010-05-11 10:48:53 UTC (rev 1772)
+++ trunk/core/src/test/java/org/infinispan/distribution/rehash/SingleLeaveTest.java	2010-05-11 11:25:09 UTC (rev 1773)
@@ -9,7 +9,7 @@
 public class SingleLeaveTest extends RehashLeaveTestBase {
    Address leaverAddress;
 
-   void performRehashEvent() {
+   void performRehashEvent(boolean offline) {
       // cause a node to LEAVE.  Typically this is c4.
       leaverAddress = addressOf(c4);
       CacheManager cm4 = c4.getCacheManager();



More information about the infinispan-commits mailing list