[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