You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kw...@apache.org on 2018/04/01 20:26:36 UTC
[29/30] qpid-broker-j git commit: QPID-8151: [Broker-J] [Unit tests]
Factor out QpidTestCase
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java
index 618fb34..73d7ac4 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/replication/ReplicatedEnvironmentFacadeTest.java
@@ -21,19 +21,37 @@
package org.apache.qpid.server.store.berkeleydb.replication;
import static org.apache.qpid.server.store.berkeleydb.EnvironmentFacade.JUL_LOGGER_LEVEL_OVERRIDE;
-import static org.apache.qpid.server.store.berkeleydb.EnvironmentFacade.LOG_HANDLER_CLEANER_PROTECTED_FILES_LIMIT_PROPERTY_NAME;
-import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade.DB_PING_SOCKET_TIMEOUT_PROPERTY_NAME;
-import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade.ENVIRONMENT_RESTART_RETRY_LIMIT_PROPERTY_NAME;
-import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade.EXECUTOR_SHUTDOWN_TIMEOUT_PROPERTY_NAME;
-import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade.MASTER_TRANSFER_TIMEOUT_PROPERTY_NAME;
+import static org.apache.qpid.server.store.berkeleydb.EnvironmentFacade
+ .LOG_HANDLER_CLEANER_PROTECTED_FILES_LIMIT_PROPERTY_NAME;
+import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade
+ .DB_PING_SOCKET_TIMEOUT_PROPERTY_NAME;
+import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade
+ .ENVIRONMENT_RESTART_RETRY_LIMIT_PROPERTY_NAME;
+import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade
+ .EXECUTOR_SHUTDOWN_TIMEOUT_PROPERTY_NAME;
+import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade
+ .MASTER_TRANSFER_TIMEOUT_PROPERTY_NAME;
import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade.PERMITTED_NODE_LIST;
-import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade.REMOTE_NODE_MONITOR_INTERVAL_PROPERTY_NAME;
-import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade.REMOTE_NODE_MONITOR_TIMEOUT_PROPERTY_NAME;
+import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade
+ .REMOTE_NODE_MONITOR_INTERVAL_PROPERTY_NAME;
+import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade
+ .REMOTE_NODE_MONITOR_TIMEOUT_PROPERTY_NAME;
import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade.ReplicationNodeImpl;
import static org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade.getRemoteNodeState;
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.is;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNotSame;
+import static org.junit.Assert.assertSame;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+import static org.junit.Assume.assumeThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.eq;
+import static org.mockito.Matchers.isA;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -75,6 +93,9 @@ import com.sleepycat.je.rep.ReplicationConfig;
import com.sleepycat.je.rep.ReplicationNode;
import com.sleepycat.je.rep.StateChangeEvent;
import com.sleepycat.je.rep.StateChangeListener;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -82,10 +103,12 @@ import org.apache.qpid.server.store.berkeleydb.EnvironmentFacade;
import org.apache.qpid.server.util.ConnectionScopedRuntimeException;
import org.apache.qpid.server.util.FileUtils;
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.test.utils.UnitTestBase;
+import org.apache.qpid.test.utils.VirtualHostNodeStoreType;
-public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
+
+public class ReplicatedEnvironmentFacadeTest extends UnitTestBase
{
private static final Logger LOGGER = LoggerFactory.getLogger(ReplicatedEnvironmentFacadeTest.class);
private int _timeout = 30;
@@ -105,15 +128,14 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
private File _storePath;
private final Map<String, ReplicatedEnvironmentFacade> _nodes = new HashMap<String, ReplicatedEnvironmentFacade>();
private Thread.UncaughtExceptionHandler _defaultUncaughtExceptionHandler;
- private CopyOnWriteArrayList<Throwable> _unhandledExceptions;
+ private CopyOnWriteArrayList<Throwable> _unhandledExceptions = new CopyOnWriteArrayList<>();
- @Override
+ @Before
public void setUp() throws Exception
{
- super.setUp();
+ assumeThat(getVirtualHostNodeStoreType(), is(equalTo(VirtualHostNodeStoreType.BDB)));
_timeout = Integer.getInteger("ReplicatedEnvironmentFacadeTest.timeout", 30);
- _unhandledExceptions = new CopyOnWriteArrayList<>();
_defaultUncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler();
Thread.setDefaultUncaughtExceptionHandler((t, e) ->
{
@@ -125,7 +147,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
setTestSystemProperty(DB_PING_SOCKET_TIMEOUT_PROPERTY_NAME, "100");
}
- @Override
+ @After
public void tearDown() throws Exception
{
try
@@ -151,16 +173,9 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
}
finally
{
- try
- {
- super.tearDown();
- }
- finally
+ if (!_unhandledExceptions.isEmpty())
{
- if (!_unhandledExceptions.isEmpty())
- {
- fail("Unhandled exception(s) detected:" + _unhandledExceptions);
- }
+ fail("Unhandled exception(s) detected:" + _unhandledExceptions);
}
}
}
@@ -168,13 +183,18 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
_portHelper.waitUntilAllocatedPortsAreFree();
}
+ @Test
public void testClose() throws Exception
{
ReplicatedEnvironmentFacade ef = createMaster();
ef.close();
- assertEquals("Unexpected state after close", ReplicatedEnvironmentFacade.State.CLOSED, ef.getFacadeState());
+ assertEquals("Unexpected state after close",
+ ReplicatedEnvironmentFacade.State.CLOSED,
+ ef.getFacadeState());
+
}
+ @Test
public void testOpenDatabaseReusesCachedHandle() throws Exception
{
DatabaseConfig createIfAbsentDbConfig = DatabaseConfig.DEFAULT.setAllowCreate(true);
@@ -192,6 +212,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
assertNotSame("Expecting a new handle after database closure", handle1, handle3);
}
+ @Test
public void testOpenDatabaseWhenFacadeIsNotOpened() throws Exception
{
DatabaseConfig createIfAbsentDbConfig = DatabaseConfig.DEFAULT.setAllowCreate(true);
@@ -210,54 +231,66 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
}
}
+ @Test
public void testGetGroupName() throws Exception
{
assertEquals("Unexpected group name", TEST_GROUP_NAME, createMaster().getGroupName());
}
+ @Test
public void testGetNodeName() throws Exception
{
assertEquals("Unexpected group name", TEST_NODE_NAME, createMaster().getNodeName());
}
+ @Test
public void testLastKnownReplicationTransactionId() throws Exception
{
ReplicatedEnvironmentFacade master = createMaster();
long lastKnownReplicationTransactionId = master.getLastKnownReplicationTransactionId();
- assertTrue("Unexpected LastKnownReplicationTransactionId " + lastKnownReplicationTransactionId, lastKnownReplicationTransactionId > 0);
+ assertTrue("Unexpected LastKnownReplicationTransactionId " + lastKnownReplicationTransactionId,
+ lastKnownReplicationTransactionId > 0);
+
}
+ @Test
public void testGetNodeHostPort() throws Exception
{
assertEquals("Unexpected node host port", TEST_NODE_HOST_PORT, createMaster().getHostPort());
}
+ @Test
public void testGetHelperHostPort() throws Exception
{
- assertEquals("Unexpected node helper host port", TEST_NODE_HELPER_HOST_PORT, createMaster().getHelperHostPort());
+ assertEquals("Unexpected node helper host port",
+ TEST_NODE_HELPER_HOST_PORT,
+ createMaster().getHelperHostPort());
}
+ @Test
public void testSetMessageStoreDurability() throws Exception
{
ReplicatedEnvironmentFacade master = createMaster();
assertEquals("Unexpected message store durability",
- new Durability(Durability.SyncPolicy.NO_SYNC, Durability.SyncPolicy.NO_SYNC, Durability.ReplicaAckPolicy.SIMPLE_MAJORITY),
- master.getRealMessageStoreDurability());
+ new Durability(Durability.SyncPolicy.NO_SYNC, Durability.SyncPolicy.NO_SYNC, Durability.ReplicaAckPolicy.SIMPLE_MAJORITY),
+ master.getRealMessageStoreDurability());
assertEquals("Unexpected durability", TEST_DURABILITY, master.getMessageStoreDurability());
assertTrue("Unexpected coalescing sync", master.isCoalescingSync());
master.setMessageStoreDurability(Durability.SyncPolicy.WRITE_NO_SYNC, Durability.SyncPolicy.SYNC, Durability.ReplicaAckPolicy.ALL);
assertEquals("Unexpected message store durability",
- new Durability(Durability.SyncPolicy.WRITE_NO_SYNC, Durability.SyncPolicy.SYNC, Durability.ReplicaAckPolicy.ALL),
- master.getRealMessageStoreDurability());
+ new Durability(Durability.SyncPolicy.WRITE_NO_SYNC, Durability.SyncPolicy.SYNC, Durability.ReplicaAckPolicy.ALL),
+ master.getRealMessageStoreDurability());
assertFalse("Coalescing sync committer is still running", master.isCoalescingSync());
}
+ @Test
public void testGetNodeState() throws Exception
{
assertEquals("Unexpected state", State.MASTER.name(), createMaster().getNodeState());
}
+ @Test
public void testPriority() throws Exception
{
final TestStateChangeListener masterListener = new TestStateChangeListener();
@@ -266,18 +299,19 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentConfiguration masterConfig = createReplicatedEnvironmentConfiguration(TEST_NODE_NAME, TEST_NODE_HOST_PORT, TEST_DESIGNATED_PRIMARY);
ReplicatedEnvironmentFacade facade = createReplicatedEnvironmentFacade(TEST_NODE_NAME, masterListener, masterGroupListener, masterConfig);
assertTrue("Master was not created", masterListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit.SECONDS));
- assertEquals("Unexpected priority", TEST_PRIORITY, facade.getPriority());
+ assertEquals("Unexpected priority", (long) TEST_PRIORITY, (long) facade.getPriority());
int newPriority = TEST_PRIORITY + 1;
when(masterConfig.getPriority()).thenReturn(newPriority);
Future<Void> future = facade.reapplyPriority();
future.get(_timeout, TimeUnit.SECONDS);
- assertEquals("Unexpected priority after change", newPriority, facade.getPriority());
+ assertEquals("Unexpected priority after change", (long) newPriority, (long) facade.getPriority());
}
+ @Test
public void testDesignatedPrimary() throws Exception
{
final TestStateChangeListener masterListener = new TestStateChangeListener();
@@ -286,7 +320,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentConfiguration masterConfig = createReplicatedEnvironmentConfiguration(TEST_NODE_NAME, TEST_NODE_HOST_PORT, TEST_DESIGNATED_PRIMARY);
ReplicatedEnvironmentFacade master = createReplicatedEnvironmentFacade(TEST_NODE_NAME, masterListener, masterGroupListener, masterConfig);
assertTrue("Master was not created", masterListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit.SECONDS));
assertEquals("Unexpected designated primary", TEST_DESIGNATED_PRIMARY, master.isDesignatedPrimary());
boolean newDesignatedPrimary = !TEST_DESIGNATED_PRIMARY;
@@ -294,9 +328,11 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
Future<Void> future = master.reapplyDesignatedPrimary();
future.get(_timeout, TimeUnit.SECONDS);
assertEquals("Unexpected designated primary after change",
- newDesignatedPrimary, master.isDesignatedPrimary());
+ newDesignatedPrimary,
+ master.isDesignatedPrimary());
}
+ @Test
public void testElectableGroupSizeOverride() throws Exception
{
final TestStateChangeListener masterListener = new TestStateChangeListener();
@@ -305,9 +341,11 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentConfiguration masterConfig = createReplicatedEnvironmentConfiguration(TEST_NODE_NAME, TEST_NODE_HOST_PORT, false);
ReplicatedEnvironmentFacade facade = createReplicatedEnvironmentFacade(TEST_NODE_NAME, masterListener, masterGroupListener, masterConfig);
assertTrue("Master was not created", masterListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit.SECONDS));
- assertEquals("Unexpected Electable Group Size Override", TEST_ELECTABLE_GROUP_OVERRIDE, facade.getElectableGroupSizeOverride());
+ assertEquals("Unexpected Electable Group Size Override",
+ (long) TEST_ELECTABLE_GROUP_OVERRIDE,
+ (long) facade.getElectableGroupSizeOverride());
int newElectableGroupOverride = TEST_ELECTABLE_GROUP_OVERRIDE + 1;
@@ -315,9 +353,12 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
Future<Void> future = facade.reapplyElectableGroupSizeOverride();
future.get(_timeout, TimeUnit.SECONDS);
- assertEquals("Unexpected Electable Group Size Override after change", newElectableGroupOverride, facade.getElectableGroupSizeOverride());
+ assertEquals("Unexpected Electable Group Size Override after change",
+ (long) newElectableGroupOverride,
+ (long) facade.getElectableGroupSizeOverride());
}
+ @Test
public void testReplicationGroupListenerHearsAboutExistingRemoteReplicationNodes() throws Exception
{
ReplicatedEnvironmentFacade master = createMaster();
@@ -340,12 +381,13 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
createReplica(nodeName2, node2NodeHostPort, listener);
- assertEquals("Unexpected number of nodes", 2, master.getNumberOfElectableGroupMembers());
+ assertEquals("Unexpected number of nodes", (long) 2, (long) master.getNumberOfElectableGroupMembers());
assertTrue("Listener not fired within timeout", nodeRecoveryLatch.await(_timeout, TimeUnit.SECONDS));
- assertEquals("Unexpected number of listener invocations", 1, invocationCount.get());
+ assertEquals("Unexpected number of listener invocations", (long) 1, (long) invocationCount.get());
}
+ @Test
public void testReplicationGroupListenerHearsNodeAdded() throws Exception
{
final CountDownLatch nodeAddedLatch = new CountDownLatch(1);
@@ -363,9 +405,12 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
TestStateChangeListener stateChangeListener = new TestStateChangeListener();
ReplicatedEnvironmentFacade replicatedEnvironmentFacade = addNode(stateChangeListener, listener);
assertTrue("Master was not started", stateChangeListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit
+ .SECONDS));
- assertEquals("Unexpected number of nodes at start of test", 1, replicatedEnvironmentFacade.getNumberOfElectableGroupMembers());
+ assertEquals("Unexpected number of nodes at start of test",
+ (long) 1,
+ (long) replicatedEnvironmentFacade.getNumberOfElectableGroupMembers());
String node2Name = TEST_NODE_NAME + "_2";
String node2NodeHostPort = "localhost" + ":" + _portHelper.getNextAvailable();
@@ -374,11 +419,14 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
assertTrue("Listener not fired within timeout", nodeAddedLatch.await(_timeout, TimeUnit.SECONDS));
- assertEquals("Unexpected number of nodes", 2, replicatedEnvironmentFacade.getNumberOfElectableGroupMembers());
+ assertEquals("Unexpected number of nodes",
+ (long) 2,
+ (long) replicatedEnvironmentFacade.getNumberOfElectableGroupMembers());
- assertEquals("Unexpected number of listener invocations", 1, invocationCount.get());
+ assertEquals("Unexpected number of listener invocations", (long) 1, (long) invocationCount.get());
}
+ @Test
public void testReplicationGroupListenerHearsNodeRemoved() throws Exception
{
final CountDownLatch nodeDeletedLatch = new CountDownLatch(1);
@@ -411,14 +459,16 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
// Set the node to be primary so that the node will remain master even when the 2nd node is shutdown
replicatedEnvironmentFacade.reapplyDesignatedPrimary();
assertTrue("Master was not started", stateChangeListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit.SECONDS));
String node2Name = TEST_NODE_NAME + "_2";
String node2NodeHostPort = "localhost" + ":" + _portHelper.getNextAvailable();
replicatedEnvironmentFacade.setPermittedNodes(Arrays.asList(replicatedEnvironmentFacade.getHostPort(), node2NodeHostPort));
createReplica(node2Name, node2NodeHostPort, new NoopReplicationGroupListener());
- assertEquals("Unexpected number of nodes at start of test", 2, replicatedEnvironmentFacade.getNumberOfElectableGroupMembers());
+ assertEquals("Unexpected number of nodes at start of test",
+ (long) 2,
+ (long) replicatedEnvironmentFacade.getNumberOfElectableGroupMembers());
// Need to await the listener hearing the addition of the node to the model.
assertTrue("Node add not fired within timeout", nodeAddedLatch.await(_timeout, TimeUnit.SECONDS));
@@ -428,11 +478,14 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
assertTrue("Node delete not fired within timeout", nodeDeletedLatch.await(_timeout, TimeUnit.SECONDS));
- assertEquals("Unexpected number of nodes after node removal", 1, replicatedEnvironmentFacade.getNumberOfElectableGroupMembers());
+ assertEquals("Unexpected number of nodes after node removal",
+ (long) 1,
+ (long) replicatedEnvironmentFacade.getNumberOfElectableGroupMembers());
- assertEquals("Unexpected number of listener invocations", 1, invocationCount.get());
+ assertEquals("Unexpected number of listener invocations", (long) 1, (long) invocationCount.get());
}
+ @Test
public void testMasterHearsRemoteNodeRoles() throws Exception
{
final String node2Name = TEST_NODE_NAME + "_2";
@@ -463,13 +516,16 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
TestStateChangeListener stateChangeListener = new TestStateChangeListener();
ReplicatedEnvironmentFacade replicatedEnvironmentFacade = addNode(stateChangeListener, listener);
assertTrue("Master was not started", stateChangeListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit
+ .SECONDS));
String node2NodeHostPort = "localhost" + ":" + _portHelper.getNextAvailable();
replicatedEnvironmentFacade.setPermittedNodes(Arrays.asList(replicatedEnvironmentFacade.getHostPort(), node2NodeHostPort));
createReplica(node2Name, node2NodeHostPort, new NoopReplicationGroupListener());
- assertEquals("Unexpected number of nodes at start of test", 2, replicatedEnvironmentFacade.getNumberOfElectableGroupMembers());
+ assertEquals("Unexpected number of nodes at start of test",
+ (long) 2,
+ (long) replicatedEnvironmentFacade.getNumberOfElectableGroupMembers());
assertTrue("Node add not fired within timeout", nodeAddedLatch.await(_timeout, TimeUnit.SECONDS));
@@ -480,25 +536,30 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
assertEquals("Unexpected node state", State.REPLICA, stateRef.get().getNodeState());
}
+ @Test
public void testRemoveNodeFromGroup() throws Exception
{
TestStateChangeListener stateChangeListener = new TestStateChangeListener();
ReplicatedEnvironmentFacade environmentFacade = addNode(TEST_NODE_NAME, TEST_NODE_HOST_PORT, true, stateChangeListener, new NoopReplicationGroupListener());
assertTrue("Environment was not created", stateChangeListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
-
+ _timeout, TimeUnit.SECONDS));
String node2Name = TEST_NODE_NAME + "_2";
String node2NodeHostPort = "localhost:" + _portHelper.getNextAvailable();
ReplicatedEnvironmentFacade ref2 = createReplica(node2Name, node2NodeHostPort, new NoopReplicationGroupListener());
- assertEquals("Unexpected group members count", 2, environmentFacade.getNumberOfElectableGroupMembers());
+ assertEquals("Unexpected group members count",
+ (long) 2,
+ (long) environmentFacade.getNumberOfElectableGroupMembers());
ref2.close();
environmentFacade.removeNodeFromGroup(node2Name);
- assertEquals("Unexpected group members count", 1, environmentFacade.getNumberOfElectableGroupMembers());
+ assertEquals("Unexpected group members count",
+ (long) 1,
+ (long) environmentFacade.getNumberOfElectableGroupMembers());
}
+ @Test
public void testRemoveNodeFromGroupTwice() throws Exception
{
TestStateChangeListener stateChangeListener = new TestStateChangeListener();
@@ -508,7 +569,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
stateChangeListener,
new NoopReplicationGroupListener());
assertTrue("Environment was not created", stateChangeListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit.SECONDS));
String node2Name = TEST_NODE_NAME + "_2";
String node2NodeHostPort = "localhost:" + _portHelper.getNextAvailable();
@@ -528,6 +589,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
}
}
+ @Test
public void testEnvironmentFacadeDetectsRemovalOfRemoteNode() throws Exception
{
final String replicaName = TEST_NODE_NAME + "_1";
@@ -570,7 +632,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
TestStateChangeListener stateChangeListener = new TestStateChangeListener();
final ReplicatedEnvironmentFacade masterEnvironment = addNode(stateChangeListener, listener);
assertTrue("Master was not started", stateChangeListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit.SECONDS));
masterEnvironment.reapplyDesignatedPrimary();
@@ -591,19 +653,26 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
replica.close();
masterEnvironment.removeNodeFromGroup(node.getName());
- assertTrue("Node deleting is undetected by the environment facade", nodeRemovedLatch.await(_timeout, TimeUnit.SECONDS));
+ assertTrue("Node deleting is undetected by the environment facade",
+ nodeRemovedLatch.await(_timeout, TimeUnit.SECONDS));
assertEquals("Unexpected node is deleted", node, removedNodeRef.get());
}
+ @Test
public void testCloseStateTransitions() throws Exception
{
ReplicatedEnvironmentFacade replicatedEnvironmentFacade = createMaster();
- assertEquals("Unexpected state " + replicatedEnvironmentFacade.getFacadeState(), ReplicatedEnvironmentFacade.State.OPEN, replicatedEnvironmentFacade.getFacadeState());
+ assertEquals("Unexpected state " + replicatedEnvironmentFacade.getFacadeState(),
+ ReplicatedEnvironmentFacade.State.OPEN,
+ replicatedEnvironmentFacade.getFacadeState());
replicatedEnvironmentFacade.close();
- assertEquals("Unexpected state " + replicatedEnvironmentFacade.getFacadeState(), ReplicatedEnvironmentFacade.State.CLOSED, replicatedEnvironmentFacade.getFacadeState());
+ assertEquals("Unexpected state " + replicatedEnvironmentFacade.getFacadeState(),
+ ReplicatedEnvironmentFacade.State.CLOSED,
+ replicatedEnvironmentFacade.getFacadeState());
}
+ @Test
public void testEnvironmentAutomaticallyRestartsAndBecomesUnknownOnInsufficientReplicas() throws Exception
{
final CountDownLatch masterLatch = new CountDownLatch(1);
@@ -655,18 +724,23 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
replica1.close();
replica2.close();
- assertTrue("Environment should be recreated and go into unknown state",
- unknownLatch.await(_timeout, TimeUnit.SECONDS));
+ assertTrue("Environment should be recreated and go into unknown state", unknownLatch.await(_timeout,
+ TimeUnit.SECONDS));
// bring back the cluster in order to make sure that no extra state transition happens between UNKNOWN and MASTER
createReplica(TEST_NODE_NAME + "_1", node1NodeHostPort, new NoopReplicationGroupListener());
assertTrue("Master node did not resume", secondMasterLatch.await(_timeout, TimeUnit.SECONDS));
- assertEquals("Node transited into Master state unexpected number of times", 2, masterStateChangeCount.get());
- assertEquals("Node transited into Unknown state unexpected number of times", 1, unknownStateChangeCount.get());
+ assertEquals("Node transited into Master state unexpected number of times",
+ (long) 2,
+ (long) masterStateChangeCount.get());
+ assertEquals("Node transited into Unknown state unexpected number of times",
+ (long) 1,
+ (long) unknownStateChangeCount.get());
}
+ @Test
public void testTransferMasterToSelf() throws Exception
{
final CountDownLatch firstNodeReplicaStateLatch = new CountDownLatch(1);
@@ -688,12 +762,13 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
}
};
ReplicatedEnvironmentFacade firstNode = addNode(stateChangeListener, new NoopReplicationGroupListener());
- assertTrue("Environment did not become a master", firstNodeMasterStateLatch.await(_timeout, TimeUnit.SECONDS));
+ assertTrue("Environment did not become a master",
+ firstNodeMasterStateLatch.await(_timeout, TimeUnit.SECONDS));
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());
+ assertEquals("Unexpected state", State.REPLICA.name(), secondNode.getNodeState());
int replica2Port = _portHelper.getNextAvailable();
String node2NodeHostPort = "localhost:" + replica2Port;
@@ -718,15 +793,16 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentFacade thirdNode = addNode(TEST_NODE_NAME + "_2", node2NodeHostPort, TEST_DESIGNATED_PRIMARY,
testStateChangeListener, new NoopReplicationGroupListener());
assertTrue("Environment did not become a replica", replicaStateLatch.await(_timeout, TimeUnit.SECONDS));
- assertEquals(3, thirdNode.getNumberOfElectableGroupMembers());
+ assertEquals((long) 3, (long) thirdNode.getNumberOfElectableGroupMembers());
thirdNode.transferMasterToSelfAsynchronously();
assertTrue("Environment did not become a master", masterStateLatch.await(_timeout, TimeUnit.SECONDS));
assertTrue("First node environment did not become a replica", firstNodeReplicaStateLatch.await(
_timeout, TimeUnit.SECONDS));
- assertEquals("Unexpected state", ReplicatedEnvironment.State.REPLICA.name(), firstNode.getNodeState());
+ assertEquals("Unexpected state", State.REPLICA.name(), firstNode.getNodeState());
}
+ @Test
public void testTransferMasterAnotherNode() throws Exception
{
final CountDownLatch firstNodeReplicaStateLatch = new CountDownLatch(1);
@@ -748,12 +824,13 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
}
};
ReplicatedEnvironmentFacade firstNode = addNode(stateChangeListener, new NoopReplicationGroupListener());
- assertTrue("Environment did not become a master", firstNodeMasterStateLatch.await(_timeout, TimeUnit.SECONDS));
+ assertTrue("Environment did not become a master",
+ firstNodeMasterStateLatch.await(_timeout, TimeUnit.SECONDS));
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());
+ assertEquals("Unexpected state", State.REPLICA.name(), secondNode.getNodeState());
int replica2Port = _portHelper.getNextAvailable();
String node2NodeHostPort = "localhost:" + replica2Port;
@@ -779,15 +856,16 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentFacade thirdNode = addNode(thirdNodeName, node2NodeHostPort, TEST_DESIGNATED_PRIMARY,
testStateChangeListener, new NoopReplicationGroupListener());
assertTrue("Environment did not become a replica", replicaStateLatch.await(_timeout, TimeUnit.SECONDS));
- assertEquals(3, thirdNode.getNumberOfElectableGroupMembers());
+ assertEquals((long) 3, (long) thirdNode.getNumberOfElectableGroupMembers());
firstNode.transferMasterAsynchronously(thirdNodeName);
assertTrue("Environment did not become a master", masterStateLatch.await(_timeout, TimeUnit.SECONDS));
assertTrue("First node environment did not become a replica", firstNodeReplicaStateLatch.await(
_timeout, TimeUnit.SECONDS));
- assertEquals("Unexpected state", ReplicatedEnvironment.State.REPLICA.name(), firstNode.getNodeState());
+ assertEquals("Unexpected state", State.REPLICA.name(), firstNode.getNodeState());
}
+ @Test
public void testBeginTransaction() throws Exception
{
ReplicatedEnvironmentFacade facade = createMaster();
@@ -810,6 +888,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
}
}
+ @Test
public void testSetPermittedNodes() throws Exception
{
ReplicatedEnvironmentFacade firstNode = createMaster();
@@ -829,6 +908,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
assertEquals("Unexpected permitted nodes", permittedNodes, new HashSet<String>(appStatePermittedNodes));
}
+ @Test
public void testPermittedNodeIsAllowedToConnect() throws Exception
{
ReplicatedEnvironmentFacade firstNode = createMaster();
@@ -848,10 +928,11 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentFacade secondNode = createReplicatedEnvironmentFacade(TEST_NODE_NAME + "_1",
stateChangeListener, new NoopReplicationGroupListener(), configuration);
assertTrue("Environment was not created", stateChangeListener.awaitForStateChange(State.REPLICA,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit.SECONDS));
assertEquals("Unexpected state", State.REPLICA.name(), secondNode.getNodeState());
}
+ @Test
public void testIntruderNodeIsDetected() throws Exception
{
final CountDownLatch intruderLatch = new CountDownLatch(1);
@@ -878,6 +959,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
assertTrue("Intruder node was not detected", intruderLatch.await(_timeout, TimeUnit.SECONDS));
}
+ @Test
public void testNodeRolledback() throws Exception
{
DatabaseConfig createConfig = new DatabaseConfig();
@@ -887,7 +969,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
TestStateChangeListener masterListener = new TestStateChangeListener();
ReplicatedEnvironmentFacade node1 = addNode(TEST_NODE_NAME, TEST_NODE_HOST_PORT, true, masterListener, new NoopReplicationGroupListener());
assertTrue("Environment was not created", masterListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit.SECONDS));
String replicaNodeHostPort = "localhost:" + _portHelper.getNextAvailable();
String replicaName = TEST_NODE_NAME + 1;
@@ -915,7 +997,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
boolean awaitForStateChange = node2StateChangeListener.awaitForStateChange(State.MASTER,
_timeout, TimeUnit.SECONDS);
assertTrue(replicaName + " did not go into desired state; current actual state is "
- + node2StateChangeListener.getCurrentActualState(), awaitForStateChange);
+ + node2StateChangeListener.getCurrentActualState(), awaitForStateChange);
db = node2.openDatabase("mydb", DatabaseConfig.DEFAULT);
@@ -935,11 +1017,10 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
_replicaRolledback.countDown();
}
});
- assertTrue("Node 1 did not go into desired state",
- node1StateChangeListener.awaitForStateChange(State.REPLICA,
- _timeout, TimeUnit.SECONDS));
+ assertTrue("Node 1 did not go into desired state", node1StateChangeListener.awaitForStateChange(State.REPLICA,
+ _timeout, TimeUnit.SECONDS));
assertTrue("Node 1 did not experience rollback within timeout",
- _replicaRolledback.await(_timeout, TimeUnit.SECONDS));
+ _replicaRolledback.await(_timeout, TimeUnit.SECONDS));
// Finally do one more transaction through the master
putRecord(node2, db, 4, "value4");
@@ -950,6 +1031,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
node2.close();
}
+ @Test
public void testReplicaTransactionBeginsImmediately() throws Exception
{
ReplicatedEnvironmentFacade master = createMaster();
@@ -987,6 +1069,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
}
}
+ @Test
public void testReplicaWriteExceptionIsConvertedIntoConnectionScopedRuntimeException() throws Exception
{
ReplicatedEnvironmentFacade master = createMaster();
@@ -1008,10 +1091,12 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
catch(ReplicaWriteException e)
{
RuntimeException handledException = master.handleDatabaseException("test", e);
- assertTrue("Unexpected exception", handledException instanceof ConnectionScopedRuntimeException);
+ final boolean condition = handledException instanceof ConnectionScopedRuntimeException;
+ assertTrue("Unexpected exception", condition);
}
}
+ @Test
public void testSetElectableGroupSizeOverrideAfterMajorityLost() throws Exception
{
final SettableFuture<Boolean> majorityLost = SettableFuture.create();
@@ -1029,7 +1114,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentConfiguration masterConfig = createReplicatedEnvironmentConfiguration(TEST_NODE_NAME, TEST_NODE_HOST_PORT, false);
ReplicatedEnvironmentFacade master = createReplicatedEnvironmentFacade(TEST_NODE_NAME, masterListener, masterGroupListener, masterConfig);
assertTrue("Master was not created", masterListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit.SECONDS));
int replica1Port = _portHelper.getNextAvailable();
String node1NodeHostPort = "localhost:" + replica1Port;
@@ -1045,19 +1130,22 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
replica2.close();
assertTrue("Node that was master did not become detached after the replica closed",
- masterListener.awaitForStateChange(State.DETACHED, _timeout, TimeUnit.SECONDS));
+ masterListener.awaitForStateChange(State.DETACHED, _timeout, TimeUnit.SECONDS));
assertTrue("Majority lost is undetected", majorityLost.get(_timeout, TimeUnit.SECONDS));
- assertEquals("Unexpected facade state", ReplicatedEnvironmentFacade.State.RESTARTING, master.getFacadeState());
-
+ assertEquals("Unexpected facade state",
+ ReplicatedEnvironmentFacade.State.RESTARTING,
+ master.getFacadeState());
when(masterConfig.getQuorumOverride()).thenReturn(1);
master.reapplyElectableGroupSizeOverride();
- assertTrue("Master did not become available again following the application of the electable group override",
- masterListener.awaitForStateChange(State.MASTER, _timeout, TimeUnit.SECONDS));
+ assertTrue(
+ "Master did not become available again following the application of the electable group override",
+ masterListener.awaitForStateChange(State.MASTER, _timeout, TimeUnit.SECONDS));
}
+ @Test
public void testSetDesignatedPrimaryAfterMajorityLost() throws Exception
{
final SettableFuture<Boolean> majorityLost = SettableFuture.create();
@@ -1075,8 +1163,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
ReplicatedEnvironmentConfiguration masterConfig = createReplicatedEnvironmentConfiguration(TEST_NODE_NAME, TEST_NODE_HOST_PORT, false);
ReplicatedEnvironmentFacade master = createReplicatedEnvironmentFacade(TEST_NODE_NAME, masterListener, masterGroupListener, masterConfig);
assertTrue("Master was not created", masterListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
-
+ _timeout, TimeUnit.SECONDS));
int replicaPort = _portHelper.getNextAvailable();
String replicaNodeHostPort = "localhost:" + replicaPort;
@@ -1087,16 +1174,18 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
replica1.close();
assertTrue("Node that was master did not become detached after the replica closed",
- masterListener.awaitForStateChange(State.DETACHED, _timeout, TimeUnit.SECONDS));
+ masterListener.awaitForStateChange(State.DETACHED, _timeout, TimeUnit.SECONDS));
assertTrue("Majority lost is undetected", majorityLost.get(_timeout, TimeUnit.SECONDS));
- assertEquals("Unexpected facade state", ReplicatedEnvironmentFacade.State.RESTARTING, master.getFacadeState());
+ assertEquals("Unexpected facade state",
+ ReplicatedEnvironmentFacade.State.RESTARTING,
+ master.getFacadeState());
when(masterConfig.isDesignatedPrimary()).thenReturn(true);
master.reapplyDesignatedPrimary();
assertTrue("Master did not become available again following designated primary",
- masterListener.awaitForStateChange(State.MASTER, _timeout, TimeUnit.SECONDS));
+ masterListener.awaitForStateChange(State.MASTER, _timeout, TimeUnit.SECONDS));
}
private void putRecord(final ReplicatedEnvironmentFacade master, final Database db, final int keyValue,
@@ -1153,7 +1242,7 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
TestStateChangeListener stateChangeListener = new TestStateChangeListener();
ReplicatedEnvironmentFacade env = addNode(stateChangeListener, replicationGroupListener);
assertTrue("Environment was not created", stateChangeListener.awaitForStateChange(State.MASTER,
- _timeout, TimeUnit.SECONDS));
+ _timeout, TimeUnit.SECONDS));
return env;
}
@@ -1171,7 +1260,8 @@ public class ReplicatedEnvironmentFacadeTest extends QpidTestCase
testStateChangeListener, replicationGroupListener);
boolean awaitForStateChange = testStateChangeListener.awaitForStateChange(State.REPLICA,
_timeout, TimeUnit.SECONDS);
- assertTrue("Replica " + nodeName + " did not go into desired state; current actual state is " + testStateChangeListener.getCurrentActualState(), awaitForStateChange);
+ assertTrue("Replica " + nodeName + " did not go into desired state; current actual state is " + testStateChangeListener.getCurrentActualState(),
+ awaitForStateChange);
return replicaEnvironmentFacade;
}
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/tuple/ConfiguredObjectBindingTest.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/tuple/ConfiguredObjectBindingTest.java b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/tuple/ConfiguredObjectBindingTest.java
index cd82a36..12627b9 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/tuple/ConfiguredObjectBindingTest.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/tuple/ConfiguredObjectBindingTest.java
@@ -20,18 +20,22 @@
*/
package org.apache.qpid.server.store.berkeleydb.tuple;
+import static org.junit.Assert.assertEquals;
+
import java.util.Collections;
import java.util.Map;
-import org.apache.qpid.server.model.UUIDGenerator;
-import org.apache.qpid.server.store.ConfiguredObjectRecord;
-
import com.sleepycat.bind.tuple.TupleInput;
import com.sleepycat.bind.tuple.TupleOutput;
+import org.junit.Before;
+import org.junit.Test;
+
+import org.apache.qpid.server.model.UUIDGenerator;
+import org.apache.qpid.server.store.ConfiguredObjectRecord;
import org.apache.qpid.server.store.ConfiguredObjectRecordImpl;
-import org.apache.qpid.test.utils.QpidTestCase;
+import org.apache.qpid.test.utils.UnitTestBase;
-public class ConfiguredObjectBindingTest extends QpidTestCase
+public class ConfiguredObjectBindingTest extends UnitTestBase
{
private ConfiguredObjectRecord _object;
@@ -42,15 +46,15 @@ public class ConfiguredObjectBindingTest extends QpidTestCase
private static final String DUMMY_TYPE_STRING = "dummyType";
private ConfiguredObjectBinding _configuredObjectBinding;
- @Override
- protected void setUp() throws Exception
+ @Before
+ public void setUp() throws Exception
{
- super.setUp();
_configuredObjectBinding = ConfiguredObjectBinding.getInstance();
_object = new ConfiguredObjectRecordImpl(UUIDGenerator.generateRandomUUID(), DUMMY_TYPE_STRING,
DUMMY_ATTRIBUTES_MAP);
}
+ @Test
public void testObjectToEntryAndEntryToObject()
{
TupleOutput tupleOutput = new TupleOutput();
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/AbstractUpgradeTestCase.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/AbstractUpgradeTestCase.java b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/AbstractUpgradeTestCase.java
index 75531d3..30dc494 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/AbstractUpgradeTestCase.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/AbstractUpgradeTestCase.java
@@ -25,6 +25,11 @@ import static org.apache.qpid.server.store.berkeleydb.BDBStoreUpgradeTestPrepare
import static org.apache.qpid.server.store.berkeleydb.BDBStoreUpgradeTestPreparer.PRIORITY_QUEUE_NAME;
import static org.apache.qpid.server.store.berkeleydb.BDBStoreUpgradeTestPreparer.QUEUE_NAME;
import static org.apache.qpid.server.store.berkeleydb.BDBStoreUpgradeTestPreparer.QUEUE_WITH_DLQ_NAME;
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.is;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assume.assumeThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -32,18 +37,21 @@ import java.io.File;
import java.io.InputStream;
import java.util.UUID;
-import org.apache.qpid.server.logging.LogSubject;
-import org.apache.qpid.server.logging.subjects.TestBlankSubject;
-import org.apache.qpid.server.model.VirtualHost;
-import org.apache.qpid.test.utils.QpidTestCase;
-import org.apache.qpid.server.util.FileUtils;
-
import com.sleepycat.je.Database;
import com.sleepycat.je.Environment;
import com.sleepycat.je.EnvironmentConfig;
import com.sleepycat.je.Transaction;
+import org.junit.After;
+import org.junit.Before;
-public abstract class AbstractUpgradeTestCase extends QpidTestCase
+import org.apache.qpid.server.logging.LogSubject;
+import org.apache.qpid.server.logging.subjects.TestBlankSubject;
+import org.apache.qpid.server.model.VirtualHost;
+import org.apache.qpid.server.util.FileUtils;
+import org.apache.qpid.test.utils.UnitTestBase;
+import org.apache.qpid.test.utils.VirtualHostNodeStoreType;
+
+public abstract class AbstractUpgradeTestCase extends UnitTestBase
{
protected static final class StaticAnswerHandler implements UpgradeInteractionHandler
{
@@ -75,10 +83,11 @@ public abstract class AbstractUpgradeTestCase extends QpidTestCase
private File _storeLocation;
protected Environment _environment;
- @Override
+ @Before
public void setUp() throws Exception
{
- super.setUp();
+ assumeThat(getVirtualHostNodeStoreType(), is(equalTo(VirtualHostNodeStoreType.BDB)));
+
_storeLocation = copyStore(getStoreDirectoryName());
_environment = createEnvironment(_storeLocation);
@@ -99,19 +108,24 @@ public abstract class AbstractUpgradeTestCase extends QpidTestCase
return new Environment(storeLocation, envConfig);
}
- @Override
+ @After
public void tearDown() throws Exception
{
try
{
- _environment.close();
+ if (_environment != null)
+ {
+ _environment.close();
+ }
}
finally
{
_environment = null;
- deleteDirectoryIfExists(_storeLocation);
+ if (_storeLocation != null)
+ {
+ deleteDirectoryIfExists(_storeLocation);
+ }
}
- super.tearDown();
}
private File copyStore(String storeDirectoryName) throws Exception
@@ -174,7 +188,7 @@ public abstract class AbstractUpgradeTestCase extends QpidTestCase
public VirtualHost getVirtualHost()
{
VirtualHost virtualHost = mock(VirtualHost.class);
- when(virtualHost.getName()).thenReturn(getName());
+ when(virtualHost.getName()).thenReturn(getTestName());
when(virtualHost.getId()).thenReturn(UUID.randomUUID());
return virtualHost;
}
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/DatabaseTemplateTest.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/DatabaseTemplateTest.java b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/DatabaseTemplateTest.java
index be1ad38..7323804 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/DatabaseTemplateTest.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/DatabaseTemplateTest.java
@@ -31,24 +31,27 @@ import com.sleepycat.je.Database;
import com.sleepycat.je.DatabaseConfig;
import com.sleepycat.je.Environment;
import com.sleepycat.je.Transaction;
-import org.apache.qpid.test.utils.QpidTestCase;
+import org.junit.Before;
+import org.junit.Test;
-public class DatabaseTemplateTest extends QpidTestCase
+import org.apache.qpid.test.utils.UnitTestBase;
+
+public class DatabaseTemplateTest extends UnitTestBase
{
private static final String SOURCE_DATABASE = "sourceDatabase";
private Environment _environment;
private Database _sourceDatabase;
- @Override
+ @Before
public void setUp() throws Exception
{
- super.setUp();
_environment = mock(Environment.class);
_sourceDatabase = mock(Database.class);
when(_environment.openDatabase(any(Transaction.class), same(SOURCE_DATABASE), isA(DatabaseConfig.class)))
.thenReturn(_sourceDatabase);
}
+ @Test
public void testExecuteWithTwoDatabases()
{
String targetDatabaseName = "targetDatabase";
@@ -69,6 +72,7 @@ public class DatabaseTemplateTest extends QpidTestCase
verify(targetDatabase).close();
}
+ @Test
public void testExecuteWithOneDatabases()
{
DatabaseTemplate databaseTemplate = new DatabaseTemplate(_environment, SOURCE_DATABASE, null, null);
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/MapJsonSerializerTest.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/MapJsonSerializerTest.java b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/MapJsonSerializerTest.java
index 2b3582a..744ea72 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/MapJsonSerializerTest.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/MapJsonSerializerTest.java
@@ -20,23 +20,28 @@
*/
package org.apache.qpid.server.store.berkeleydb.upgrade;
+import static org.junit.Assert.assertEquals;
+
import java.util.HashMap;
import java.util.Map;
-import org.apache.qpid.test.utils.QpidTestCase;
+import org.junit.Before;
+import org.junit.Test;
+
+import org.apache.qpid.test.utils.UnitTestBase;
-public class MapJsonSerializerTest extends QpidTestCase
+public class MapJsonSerializerTest extends UnitTestBase
{
private MapJsonSerializer _serializer;
- @Override
- protected void setUp() throws Exception
+ @Before
+ public void setUp() throws Exception
{
- super.setUp();
_serializer = new MapJsonSerializer();
}
+ @Test
public void testSerializeDeserialize() throws Exception
{
Map<String, Object> testMap = new HashMap<>();
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom4to5Test.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom4to5Test.java b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom4to5Test.java
index f7c1e3d..311cef8 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom4to5Test.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom4to5Test.java
@@ -26,6 +26,9 @@ import static org.apache.qpid.server.store.berkeleydb.BDBStoreUpgradeTestPrepare
import static org.apache.qpid.server.store.berkeleydb.BDBStoreUpgradeTestPreparer.QUEUE_WITH_DLQ_NAME;
import static org.apache.qpid.server.store.berkeleydb.BDBStoreUpgradeTestPreparer.SELECTOR_TOPIC_NAME;
import static org.apache.qpid.server.store.berkeleydb.BDBStoreUpgradeTestPreparer.TOPIC_NAME;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
import java.nio.ByteBuffer;
import java.util.ArrayList;
@@ -38,6 +41,12 @@ import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicReference;
+import com.sleepycat.bind.tuple.LongBinding;
+import com.sleepycat.je.Database;
+import com.sleepycat.je.DatabaseEntry;
+import com.sleepycat.je.Transaction;
+import org.junit.Test;
+
import org.apache.qpid.server.filter.AMQPFilterTypes;
import org.apache.qpid.server.protocol.v0_8.AMQShortString;
import org.apache.qpid.server.protocol.v0_8.FieldTable;
@@ -49,11 +58,6 @@ import org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom4To5.QueueEntr
import org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom4To5.QueueEntryKeyBinding;
import org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom4To5.QueueRecord;
-import com.sleepycat.bind.tuple.LongBinding;
-import com.sleepycat.je.Database;
-import com.sleepycat.je.DatabaseEntry;
-import com.sleepycat.je.Transaction;
-
public class UpgradeFrom4to5Test extends AbstractUpgradeTestCase
{
private static final String DURABLE_SUBSCRIPTION_QUEUE_WITH_SELECTOR = "clientid:mySelectorDurSubName";
@@ -70,6 +74,7 @@ public class UpgradeFrom4to5Test extends AbstractUpgradeTestCase
return "bdbstore-v4";
}
+ @Test
public void testPerformUpgradeWithHandlerAnsweringYes() throws Exception
{
UpgradeFrom4To5 upgrade = new UpgradeFrom4To5();
@@ -100,6 +105,7 @@ public class UpgradeFrom4to5Test extends AbstractUpgradeTestCase
assertContent();
}
+ @Test
public void testPerformUpgradeWithHandlerAnsweringNo() throws Exception
{
UpgradeFrom4To5 upgrade = new UpgradeFrom4To5();
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom5To6Test.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom5To6Test.java b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom5To6Test.java
index 6d6ab77..475d277 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom5To6Test.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom5To6Test.java
@@ -29,6 +29,9 @@ import static org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom5To6.NE
import static org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom5To6.NEW_XID_DB_NAME;
import static org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom5To6.OLD_CONTENT_DB_NAME;
import static org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom5To6.OLD_XID_DB_NAME;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
import java.io.File;
import java.util.ArrayList;
@@ -47,6 +50,7 @@ import com.sleepycat.je.DatabaseEntry;
import com.sleepycat.je.Environment;
import com.sleepycat.je.LockMode;
import com.sleepycat.je.Transaction;
+import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -56,7 +60,6 @@ import org.apache.qpid.server.model.LifetimePolicy;
import org.apache.qpid.server.model.Queue;
import org.apache.qpid.server.model.UUIDGenerator;
import org.apache.qpid.server.queue.QueueArgumentsConverter;
-import org.apache.qpid.server.txn.Xid;
import org.apache.qpid.server.store.berkeleydb.tuple.XidBinding;
import org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom5To6.CompoundKey;
import org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom5To6.CompoundKeyBinding;
@@ -72,6 +75,7 @@ import org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom5To6.OldPrepar
import org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom5To6.OldRecordImpl;
import org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom5To6.UpgradeConfiguredObjectRecord;
import org.apache.qpid.server.store.berkeleydb.upgrade.UpgradeFrom5To6.UpgradeUUIDBinding;
+import org.apache.qpid.server.txn.Xid;
public class UpgradeFrom5To6Test extends AbstractUpgradeTestCase
{
@@ -84,6 +88,7 @@ public class UpgradeFrom5To6Test extends AbstractUpgradeTestCase
return "bdbstore-v5";
}
+ @Test
public void testPerformUpgrade() throws Exception
{
UpgradeFrom5To6 upgrade = new UpgradeFrom5To6();
@@ -96,6 +101,7 @@ public class UpgradeFrom5To6Test extends AbstractUpgradeTestCase
assertQueueEntries();
}
+ @Test
public void testPerformUpgradeWithMissingMessageChunkKeepsIncompleteMessage() throws Exception
{
corruptDatabase();
@@ -109,6 +115,7 @@ public class UpgradeFrom5To6Test extends AbstractUpgradeTestCase
assertQueueEntries();
}
+ @Test
public void testPerformUpgradeWithMissingMessageChunkDiscardsIncompleteMessage() throws Exception
{
corruptDatabase();
@@ -126,9 +133,10 @@ public class UpgradeFrom5To6Test extends AbstractUpgradeTestCase
assertQueueEntries();
}
+ @Test
public void testPerformXidUpgrade() throws Exception
{
- File storeLocation = new File(TMP_FOLDER, getName());
+ File storeLocation = new File(TMP_FOLDER, getTestName());
storeLocation.mkdirs();
Environment environment = createEnvironment(storeLocation);
try
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom7To8Test.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom7To8Test.java b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom7To8Test.java
index bc40c9c..9b7cd14 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom7To8Test.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom7To8Test.java
@@ -20,6 +20,8 @@
*/
package org.apache.qpid.server.store.berkeleydb.upgrade;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -35,6 +37,7 @@ import com.sleepycat.bind.tuple.TupleOutput;
import com.sleepycat.je.Database;
import com.sleepycat.je.DatabaseEntry;
import com.sleepycat.je.Transaction;
+import org.junit.Test;
import org.apache.qpid.server.model.Exchange;
import org.apache.qpid.server.model.LifetimePolicy;
@@ -63,6 +66,7 @@ public class UpgradeFrom7To8Test extends AbstractUpgradeTestCase
return "bdbstore-v7";
}
+ @Test
public void testPerformUpgrade() throws Exception
{
UpgradeFrom7To8 upgrade = new UpgradeFrom7To8();
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom8To9Test.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom8To9Test.java b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom8To9Test.java
index 2c9a4cd..b64623f 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom8To9Test.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgradeFrom8To9Test.java
@@ -22,6 +22,8 @@
package org.apache.qpid.server.store.berkeleydb.upgrade;
+import static org.junit.Assert.assertEquals;
+
import java.util.ArrayList;
import java.util.List;
@@ -29,6 +31,7 @@ import com.sleepycat.bind.tuple.StringBinding;
import com.sleepycat.je.Database;
import com.sleepycat.je.DatabaseEntry;
import com.sleepycat.je.Transaction;
+import org.junit.Test;
public class UpgradeFrom8To9Test extends AbstractUpgradeTestCase
{
@@ -41,6 +44,7 @@ public class UpgradeFrom8To9Test extends AbstractUpgradeTestCase
return "bdbstore-v8";
}
+ @Test
public void testPerformUpgrade() throws Exception
{
UpgradeFrom8To9 upgrade = new UpgradeFrom8To9();
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgraderFailOnNewerVersionTest.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgraderFailOnNewerVersionTest.java b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgraderFailOnNewerVersionTest.java
index 5b869b6..745f100 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgraderFailOnNewerVersionTest.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgraderFailOnNewerVersionTest.java
@@ -20,12 +20,17 @@
*/
package org.apache.qpid.server.store.berkeleydb.upgrade;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.fail;
+
import com.sleepycat.bind.tuple.IntegerBinding;
import com.sleepycat.je.Cursor;
import com.sleepycat.je.Database;
import com.sleepycat.je.DatabaseConfig;
import com.sleepycat.je.DatabaseEntry;
import com.sleepycat.je.OperationStatus;
+import org.junit.Before;
+import org.junit.Test;
import org.apache.qpid.server.store.berkeleydb.BDBConfigurationStore;
import org.apache.qpid.server.util.ServerScopedRuntimeException;
@@ -40,7 +45,7 @@ public class UpgraderFailOnNewerVersionTest extends AbstractUpgradeTestCase
return "bdbstore-v999";
}
- @Override
+ @Before
public void setUp() throws Exception
{
super.setUp();
@@ -53,12 +58,9 @@ public class UpgraderFailOnNewerVersionTest extends AbstractUpgradeTestCase
dbConfig.setTransactional(true);
dbConfig.setAllowCreate(true);
int storeVersion = -1;
- Database versionDb = null;
- Cursor cursor = null;
- try
+ try(Database versionDb = _environment.openDatabase(null, Upgrader.VERSION_DB_NAME, dbConfig);
+ Cursor cursor = versionDb.openCursor(null, null))
{
- versionDb = _environment.openDatabase(null, Upgrader.VERSION_DB_NAME, dbConfig);
- cursor = versionDb.openCursor(null, null);
DatabaseEntry key = new DatabaseEntry();
DatabaseEntry value = new DatabaseEntry();
while (cursor.getNext(key, value, null) == OperationStatus.SUCCESS)
@@ -70,20 +72,10 @@ public class UpgraderFailOnNewerVersionTest extends AbstractUpgradeTestCase
}
}
}
- finally
- {
- if (cursor != null)
- {
- cursor.close();
- }
- if (versionDb != null)
- {
- versionDb.close();
- }
- }
return storeVersion;
}
+ @Test
public void testUpgrade() throws Exception
{
assertEquals("Unexpected store version", 999, getStoreVersion());
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgraderTest.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgraderTest.java b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgraderTest.java
index b9cc9f2..09c6516 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgraderTest.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/upgrade/UpgraderTest.java
@@ -20,14 +20,14 @@
*/
package org.apache.qpid.server.store.berkeleydb.upgrade;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
import java.io.File;
import java.util.ArrayList;
import java.util.List;
-import org.apache.qpid.server.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.server.store.berkeleydb.BDBConfigurationStore;
-import org.apache.qpid.server.store.berkeleydb.tuple.ByteBufferBinding;
-
import com.sleepycat.bind.tuple.IntegerBinding;
import com.sleepycat.bind.tuple.LongBinding;
import com.sleepycat.je.Cursor;
@@ -37,6 +37,12 @@ import com.sleepycat.je.DatabaseEntry;
import com.sleepycat.je.Environment;
import com.sleepycat.je.OperationStatus;
import com.sleepycat.je.Transaction;
+import org.junit.Before;
+import org.junit.Test;
+
+import org.apache.qpid.server.bytebuffer.QpidByteBuffer;
+import org.apache.qpid.server.store.berkeleydb.BDBConfigurationStore;
+import org.apache.qpid.server.store.berkeleydb.tuple.ByteBufferBinding;
public class UpgraderTest extends AbstractUpgradeTestCase
{
@@ -48,7 +54,7 @@ public class UpgraderTest extends AbstractUpgradeTestCase
return "bdbstore-v4";
}
- @Override
+ @Before
public void setUp() throws Exception
{
super.setUp();
@@ -61,12 +67,9 @@ public class UpgraderTest extends AbstractUpgradeTestCase
dbConfig.setTransactional(true);
dbConfig.setAllowCreate(true);
int storeVersion = -1;
- Database versionDb = null;
- Cursor cursor = null;
- try
+ try(Database versionDb = environment.openDatabase(null, Upgrader.VERSION_DB_NAME, dbConfig);
+ Cursor cursor = versionDb.openCursor(null, null))
{
- versionDb = environment.openDatabase(null, Upgrader.VERSION_DB_NAME, dbConfig);
- cursor = versionDb.openCursor(null, null);
DatabaseEntry key = new DatabaseEntry();
DatabaseEntry value = new DatabaseEntry();
while (cursor.getNext(key, value, null) == OperationStatus.SUCCESS)
@@ -78,20 +81,10 @@ public class UpgraderTest extends AbstractUpgradeTestCase
}
}
}
- finally
- {
- if (cursor != null)
- {
- cursor.close();
- }
- if (versionDb != null)
- {
- versionDb.close();
- }
- }
return storeVersion;
}
+ @Test
public void testUpgrade() throws Exception
{
assertEquals("Unexpected store version", -1, getStoreVersion(_environment));
@@ -100,9 +93,10 @@ public class UpgraderTest extends AbstractUpgradeTestCase
assertContent();
}
+ @Test
public void testEmptyDatabaseUpgradeDoesNothing() throws Exception
{
- File nonExistentStoreLocation = new File(TMP_FOLDER, getName());
+ File nonExistentStoreLocation = new File(TMP_FOLDER, getTestName());
deleteDirectoryIfExists(nonExistentStoreLocation);
nonExistentStoreLocation.mkdir();
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBVirtualHostImplTest.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBVirtualHostImplTest.java b/bdbstore/src/test/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBVirtualHostImplTest.java
index 36227c8..52f27eb 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBVirtualHostImplTest.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBVirtualHostImplTest.java
@@ -20,6 +20,11 @@
*/
package org.apache.qpid.server.virtualhost.berkeleydb;
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.is;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+import static org.junit.Assume.assumeThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -28,27 +33,33 @@ import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
import org.apache.qpid.server.configuration.IllegalConfigurationException;
import org.apache.qpid.server.configuration.updater.CurrentThreadTaskExecutor;
import org.apache.qpid.server.configuration.updater.TaskExecutor;
import org.apache.qpid.server.model.Broker;
import org.apache.qpid.server.model.BrokerModel;
+import org.apache.qpid.server.model.BrokerTestHelper;
import org.apache.qpid.server.model.VirtualHostNode;
import org.apache.qpid.server.store.DurableConfigurationStore;
-import org.apache.qpid.server.model.BrokerTestHelper;
-import org.apache.qpid.test.utils.QpidTestCase;
-import org.apache.qpid.test.utils.TestFileUtils;
import org.apache.qpid.server.util.FileUtils;
+import org.apache.qpid.test.utils.TestFileUtils;
+import org.apache.qpid.test.utils.UnitTestBase;
+import org.apache.qpid.test.utils.VirtualHostNodeStoreType;
-public class BDBVirtualHostImplTest extends QpidTestCase
+public class BDBVirtualHostImplTest extends UnitTestBase
{
private File _storePath;
private VirtualHostNode<?> _node;
- @Override
+ @Before
public void setUp() throws Exception
{
- super.setUp();
+ assumeThat(getVirtualHostNodeStoreType(), is(equalTo(VirtualHostNodeStoreType.BDB)));
+
Broker broker = BrokerTestHelper.createBrokerMock();
TaskExecutor taskExecutor = CurrentThreadTaskExecutor.newStartedInstance();
@@ -67,22 +78,16 @@ public class BDBVirtualHostImplTest extends QpidTestCase
when(_node.getId()).thenReturn(UUID.randomUUID());
}
- @Override
- public void tearDown() throws Exception
+ @After
+ public void tearDown() throws Exception
{
- try
- {
- if (_storePath != null)
- {
- FileUtils.delete(_storePath, true);
- }
- }
- finally
+ if (_storePath != null)
{
- super.tearDown();
+ FileUtils.delete(_storePath, true);
}
}
+ @Test
public void testValidateOnCreateForInvalidStorePath() throws Exception
{
String hostName = getTestName();
@@ -102,7 +107,8 @@ public class BDBVirtualHostImplTest extends QpidTestCase
}
catch (IllegalConfigurationException e)
{
- assertTrue("Unexpected exception " + e.getMessage(), e.getMessage().startsWith("Cannot open virtual host message store"));
+ assertTrue("Unexpected exception " + e.getMessage(),
+ e.getMessage().startsWith("Cannot open virtual host message store"));
}
}
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/d0dcd3fc/bdbstore/src/test/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNodeTest.java
----------------------------------------------------------------------
diff --git a/bdbstore/src/test/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNodeTest.java b/bdbstore/src/test/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNodeTest.java
index 9b6fc09..2634750 100644
--- a/bdbstore/src/test/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNodeTest.java
+++ b/bdbstore/src/test/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHARemoteReplicationNodeTest.java
@@ -19,6 +19,11 @@
package org.apache.qpid.server.virtualhostnode.berkeleydb;
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.is;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.fail;
+import static org.junit.Assume.assumeThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyLong;
import static org.mockito.Matchers.anyMap;
@@ -38,9 +43,13 @@ import java.util.concurrent.ExecutionException;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
+import org.junit.Before;
+import org.junit.Test;
+
import org.apache.qpid.server.configuration.updater.CurrentThreadTaskExecutor;
import org.apache.qpid.server.configuration.updater.TaskExecutor;
import org.apache.qpid.server.model.Broker;
+import org.apache.qpid.server.model.BrokerTestHelper;
import org.apache.qpid.server.model.ConfiguredObjectFactory;
import org.apache.qpid.server.model.VirtualHost;
import org.apache.qpid.server.model.VirtualHostNode;
@@ -50,12 +59,12 @@ import org.apache.qpid.server.security.SecurityToken;
import org.apache.qpid.server.security.access.Operation;
import org.apache.qpid.server.store.DurableConfigurationStore;
import org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade;
-import org.apache.qpid.server.model.BrokerTestHelper;
import org.apache.qpid.server.util.ConnectionScopedRuntimeException;
import org.apache.qpid.server.util.ServerScopedRuntimeException;
-import org.apache.qpid.test.utils.QpidTestCase;
+import org.apache.qpid.test.utils.UnitTestBase;
+import org.apache.qpid.test.utils.VirtualHostNodeStoreType;
-public class BDBHARemoteReplicationNodeTest extends QpidTestCase
+public class BDBHARemoteReplicationNodeTest extends UnitTestBase
{
private final AccessControl _mockAccessControl = mock(AccessControl.class);
@@ -66,10 +75,10 @@ public class BDBHARemoteReplicationNodeTest extends QpidTestCase
private ReplicatedEnvironmentFacade _facade;
- @Override
- protected void setUp() throws Exception
+ @Before
+ public void setUp() throws Exception
{
- super.setUp();
+ assumeThat(getVirtualHostNodeStoreType(), is(equalTo(VirtualHostNodeStoreType.BDB)));
_facade = mock(ReplicatedEnvironmentFacade.class);
@@ -97,9 +106,10 @@ public class BDBHARemoteReplicationNodeTest extends QpidTestCase
}
+ @Test
public void testUpdateRole() throws Exception
{
- String remoteReplicationName = getName();
+ String remoteReplicationName = getTestName();
BDBHARemoteReplicationNode remoteReplicationNode = createRemoteReplicationNode(remoteReplicationName);
// Simulate an election that put the node in REPLICA state
((BDBHARemoteReplicationNodeImpl)remoteReplicationNode).setRole(NodeRole.REPLICA);
@@ -141,9 +151,10 @@ public class BDBHARemoteReplicationNodeTest extends QpidTestCase
}
}
+ @Test
public void testDelete()
{
- String remoteReplicationName = getName();
+ String remoteReplicationName = getTestName();
BDBHARemoteReplicationNode remoteReplicationNode = createRemoteReplicationNode(remoteReplicationName);
remoteReplicationNode.delete();
@@ -153,12 +164,14 @@ public class BDBHARemoteReplicationNodeTest extends QpidTestCase
// *************** ReplicationNode Access Control Tests ***************
+ @Test
public void testUpdateDeniedByACL()
{
- String remoteReplicationName = getName();
+ String remoteReplicationName = getTestName();
BDBHARemoteReplicationNode remoteReplicationNode = createRemoteReplicationNode(remoteReplicationName);
when(_mockAccessControl.authorise(any(SecurityToken.class), eq(Operation.UPDATE), eq(remoteReplicationNode), anyMap())).thenReturn(Result.DENIED);
+
assertNull(remoteReplicationNode.getDescription());
try
@@ -172,9 +185,10 @@ public class BDBHARemoteReplicationNodeTest extends QpidTestCase
}
}
+ @Test
public void testDeleteDeniedByACL()
{
- String remoteReplicationName = getName();
+ String remoteReplicationName = getTestName();
BDBHARemoteReplicationNode remoteReplicationNode = createRemoteReplicationNode(remoteReplicationName);
when(_mockAccessControl.authorise(any(SecurityToken.class), eq(Operation.DELETE), eq(remoteReplicationNode), anyMap())).thenReturn(Result.DENIED);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org