summaryrefslogtreecommitdiff
path: root/java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java')
-rw-r--r--java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java54
1 files changed, 30 insertions, 24 deletions
diff --git a/java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java b/java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java
index 7dc7352cfb..69d44bbe88 100644
--- a/java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java
+++ b/java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java
@@ -35,6 +35,7 @@ import java.util.concurrent.atomic.AtomicReference;
import org.apache.log4j.Logger;
import org.apache.qpid.server.store.berkeleydb.EnvironmentFacade;
+import org.apache.qpid.test.utils.PortHelper;
import org.apache.qpid.test.utils.QpidTestCase;
import org.apache.qpid.test.utils.TestFileUtils;
import org.apache.qpid.util.FileUtils;
@@ -57,17 +58,20 @@ import org.codehaus.jackson.map.ObjectMapper;
public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
{
private static final Logger LOGGER = Logger.getLogger(ReplicatedEnvironmentFacadeTest.class);
- private static final int TEST_NODE_PORT = new QpidTestCase().findFreePort();
private static final int LISTENER_TIMEOUT = 5;
private static final int WAIT_STATE_CHANGE_TIMEOUT = 30;
- private static final String TEST_GROUP_NAME = "testGroupName";
- private static final String TEST_NODE_NAME = "testNodeName";
- private static final String TEST_NODE_HOST_PORT = "localhost:" + TEST_NODE_PORT;
- private static final String TEST_NODE_HELPER_HOST_PORT = TEST_NODE_HOST_PORT;
- private static final Durability TEST_DURABILITY = Durability.parse("SYNC,NO_SYNC,SIMPLE_MAJORITY");
- private static final boolean TEST_DESIGNATED_PRIMARY = false;
- private static final int TEST_PRIORITY = 1;
- private static final int TEST_ELECTABLE_GROUP_OVERRIDE = 0;
+
+ private final PortHelper _portHelper = new PortHelper();
+
+ private final String TEST_GROUP_NAME = "testGroupName";
+ private final String TEST_NODE_NAME = "testNodeName";
+ private final int TEST_NODE_PORT = _portHelper.getNextAvailable();
+ private final String TEST_NODE_HOST_PORT = "localhost:" + TEST_NODE_PORT;
+ private final String TEST_NODE_HELPER_HOST_PORT = TEST_NODE_HOST_PORT;
+ private final Durability TEST_DURABILITY = Durability.parse("SYNC,NO_SYNC,SIMPLE_MAJORITY");
+ private final boolean TEST_DESIGNATED_PRIMARY = false;
+ private final int TEST_PRIORITY = 1;
+ private final int TEST_ELECTABLE_GROUP_OVERRIDE = 0;
private File _storePath;
private final Map<String, ReplicatedEnvironmentFacade> _nodes = new HashMap<String, ReplicatedEnvironmentFacade>();
@@ -105,6 +109,8 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
super.tearDown();
}
}
+
+ _portHelper.waitUntilAllocatedPortsAreFree();
}
public void testEnvironmentFacade() throws Exception
{
@@ -220,7 +226,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentFacade master = createMaster();
String nodeName2 = TEST_NODE_NAME + "_2";
String host = "localhost";
- int port = getNextAvailable(TEST_NODE_PORT + 1);
+ int port = _portHelper.getNextAvailable();
String node2NodeHostPort = host + ":" + port;
final AtomicInteger invocationCount = new AtomicInteger();
@@ -264,7 +270,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
assertEquals("Unexpected number of nodes at start of test", 1, replicatedEnvironmentFacade.getNumberOfElectableGroupMembers());
String node2Name = TEST_NODE_NAME + "_2";
- String node2NodeHostPort = "localhost" + ":" + getNextAvailable(TEST_NODE_PORT + 1);
+ String node2NodeHostPort = "localhost" + ":" + _portHelper.getNextAvailable();
replicatedEnvironmentFacade.setPermittedNodes(Arrays.asList(replicatedEnvironmentFacade.getHostPort(), node2NodeHostPort));
createReplica(node2Name, node2NodeHostPort, new NoopReplicationGroupListener());
@@ -307,7 +313,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
assertTrue("Master was not started", stateChangeListener.awaitForStateChange(LISTENER_TIMEOUT, TimeUnit.SECONDS));
String node2Name = TEST_NODE_NAME + "_2";
- String node2NodeHostPort = "localhost" + ":" + getNextAvailable(TEST_NODE_PORT + 1);
+ String node2NodeHostPort = "localhost" + ":" + _portHelper.getNextAvailable();
replicatedEnvironmentFacade.setPermittedNodes(Arrays.asList(replicatedEnvironmentFacade.getHostPort(), node2NodeHostPort));
createReplica(node2Name, node2NodeHostPort, new NoopReplicationGroupListener());
@@ -357,7 +363,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentFacade replicatedEnvironmentFacade = addNode(stateChangeListener, listener);
assertTrue("Master was not started", stateChangeListener.awaitForStateChange(LISTENER_TIMEOUT, TimeUnit.SECONDS));
- String node2NodeHostPort = "localhost" + ":" + getNextAvailable(TEST_NODE_PORT + 1);
+ String node2NodeHostPort = "localhost" + ":" + _portHelper.getNextAvailable();
replicatedEnvironmentFacade.setPermittedNodes(Arrays.asList(replicatedEnvironmentFacade.getHostPort(), node2NodeHostPort));
createReplica(node2Name, node2NodeHostPort, new NoopReplicationGroupListener());
@@ -380,7 +386,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
String node2Name = TEST_NODE_NAME + "_2";
- String node2NodeHostPort = "localhost:" + getNextAvailable(TEST_NODE_PORT + 1);
+ String node2NodeHostPort = "localhost:" + _portHelper.getNextAvailable();
ReplicatedEnvironmentFacade ref2 = createReplica(node2Name, node2NodeHostPort, new NoopReplicationGroupListener());
assertEquals("Unexpected group members count", 2, environmentFacade.getNumberOfElectableGroupMembers());
@@ -436,7 +442,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
masterEnvironment.setDesignatedPrimary(true);
- int replica1Port = getNextAvailable(TEST_NODE_PORT + 1);
+ int replica1Port = _portHelper.getNextAvailable();
String node1NodeHostPort = "localhost:" + replica1Port;
masterEnvironment.setPermittedNodes(Arrays.asList(masterEnvironment.getHostPort(), node1NodeHostPort));
ReplicatedEnvironmentFacade replica = createReplica(replicaName, node1NodeHostPort, new NoopReplicationGroupListener());
@@ -493,9 +499,9 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
addNode(stateChangeListener, new NoopReplicationGroupListener());
assertTrue("Master was not started", masterLatch.await(LISTENER_TIMEOUT, TimeUnit.SECONDS));
- int replica1Port = getNextAvailable(TEST_NODE_PORT + 1);
+ int replica1Port = _portHelper.getNextAvailable();
String node1NodeHostPort = "localhost:" + replica1Port;
- int replica2Port = getNextAvailable(replica1Port + 1);
+ int replica2Port = _portHelper.getNextAvailable();
String node2NodeHostPort = "localhost:" + replica2Port;
ReplicatedEnvironmentFacade replica1 = createReplica(TEST_NODE_NAME + "_1", node1NodeHostPort, new NoopReplicationGroupListener());
@@ -535,12 +541,12 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentFacade firstNode = addNode(stateChangeListener, new NoopReplicationGroupListener());
assertTrue("Environment did not become a master", firstNodeMasterStateLatch.await(10, TimeUnit.SECONDS));
- int replica1Port = getNextAvailable(TEST_NODE_PORT + 1);
+ int replica1Port = _portHelper.getNextAvailable();
String node1NodeHostPort = "localhost:" + replica1Port;
ReplicatedEnvironmentFacade secondNode = createReplica(TEST_NODE_NAME + "_1", node1NodeHostPort, new NoopReplicationGroupListener());
assertEquals("Unexpected state", ReplicatedEnvironment.State.REPLICA.name(), secondNode.getNodeState());
- int replica2Port = getNextAvailable(replica1Port + 1);
+ int replica2Port = _portHelper.getNextAvailable();
String node2NodeHostPort = "localhost:" + replica2Port;
final CountDownLatch replicaStateLatch = new CountDownLatch(1);
final CountDownLatch masterStateLatch = new CountDownLatch(1);
@@ -594,12 +600,12 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentFacade firstNode = addNode(stateChangeListener, new NoopReplicationGroupListener());
assertTrue("Environment did not become a master", firstNodeMasterStateLatch.await(10, TimeUnit.SECONDS));
- int replica1Port = getNextAvailable(TEST_NODE_PORT + 1);
+ int replica1Port = _portHelper.getNextAvailable();
String node1NodeHostPort = "localhost:" + replica1Port;
ReplicatedEnvironmentFacade secondNode = createReplica(TEST_NODE_NAME + "_1", node1NodeHostPort, new NoopReplicationGroupListener());
assertEquals("Unexpected state", ReplicatedEnvironment.State.REPLICA.name(), secondNode.getNodeState());
- int replica2Port = getNextAvailable(replica1Port + 1);
+ int replica2Port = _portHelper.getNextAvailable();
String node2NodeHostPort = "localhost:" + replica2Port;
final CountDownLatch replicaStateLatch = new CountDownLatch(1);
final CountDownLatch masterStateLatch = new CountDownLatch(1);
@@ -657,7 +663,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
Set<String> permittedNodes = new HashSet<String>();
permittedNodes.add("localhost:" + TEST_NODE_PORT);
- permittedNodes.add("localhost:" + getNextAvailable(TEST_NODE_PORT + 1));
+ permittedNodes.add("localhost:" + _portHelper.getNextAvailable());
firstNode.setPermittedNodes(permittedNodes);
ReplicatedEnvironmentFacade.ReplicationNodeImpl replicationNode = new ReplicatedEnvironmentFacade.ReplicationNodeImpl(TEST_NODE_NAME, TEST_NODE_HOST_PORT);
@@ -674,7 +680,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
{
ReplicatedEnvironmentFacade firstNode = createMaster();
- int replica1Port = getNextAvailable(TEST_NODE_PORT + 1);
+ int replica1Port = _portHelper.getNextAvailable();
String node1NodeHostPort = "localhost:" + replica1Port;
Set<String> permittedNodes = new HashSet<String>();
@@ -705,7 +711,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
}
};
ReplicatedEnvironmentFacade firstNode = createMaster(listener);
- int replica1Port = getNextAvailable(TEST_NODE_PORT + 1);
+ int replica1Port = _portHelper.getNextAvailable();
String node1NodeHostPort = "localhost:" + replica1Port;
Set<String> permittedNodes = new HashSet<String>();