summaryrefslogtreecommitdiff
path: root/qpid/java/systests/src
diff options
context:
space:
mode:
authorRobert Godfrey <rgodfrey@apache.org>2014-05-08 13:14:05 +0000
committerRobert Godfrey <rgodfrey@apache.org>2014-05-08 13:14:05 +0000
commit14ffecc29a8393f54c9d4f6f3bce6ee3276cf381 (patch)
tree8d3b879c9c74fa132f7cfba8e474bb72a781dece /qpid/java/systests/src
parent54243c16cf78f1d82c642335deaa01aa9a1b341e (diff)
downloadqpid-python-14ffecc29a8393f54c9d4f6f3bce6ee3276cf381.tar.gz
QPID-5754 : [Java Broker] Make state change operations methods rather than calls to setDesiredState
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1593264 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/systests/src')
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/client/AsynchMessageListenerTest.java4
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/server/store/VirtualHostMessageStoreTest.java10
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/ExchangeRestTest.java7
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/PortRestTest.java62
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostRestTest.java18
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java4
-rwxr-xr-xqpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java2
7 files changed, 73 insertions, 34 deletions
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/client/AsynchMessageListenerTest.java b/qpid/java/systests/src/main/java/org/apache/qpid/client/AsynchMessageListenerTest.java
index 09402c140d..a13bf71d5e 100644
--- a/qpid/java/systests/src/main/java/org/apache/qpid/client/AsynchMessageListenerTest.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/client/AsynchMessageListenerTest.java
@@ -46,7 +46,7 @@ public class AsynchMessageListenerTest extends QpidBrokerTestCase
private static final int MSG_COUNT = 10;
private static final long AWAIT_MESSAGE_TIMEOUT = 2000;
private static final long AWAIT_MESSAGE_TIMEOUT_NEGATIVE = 250;
- private final String _testQueueName = getTestQueueName();
+ private String _testQueueName;
private Connection _consumerConnection;
private Session _consumerSession;
private MessageConsumer _consumer;
@@ -55,7 +55,7 @@ public class AsynchMessageListenerTest extends QpidBrokerTestCase
protected void setUp() throws Exception
{
super.setUp();
-
+ _testQueueName = getTestQueueName();
_consumerConnection = getConnection();
_consumerConnection.start();
_consumerSession = _consumerConnection.createSession(false, Session.AUTO_ACKNOWLEDGE);
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/server/store/VirtualHostMessageStoreTest.java b/qpid/java/systests/src/main/java/org/apache/qpid/server/store/VirtualHostMessageStoreTest.java
index cfb331fd0f..70dc663e4b 100644
--- a/qpid/java/systests/src/main/java/org/apache/qpid/server/store/VirtualHostMessageStoreTest.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/server/store/VirtualHostMessageStoreTest.java
@@ -138,7 +138,7 @@ public class VirtualHostMessageStoreTest extends QpidTestCase
nodeAttributes.put(VirtualHostNode.NAME, hostName);
nodeAttributes.put(VirtualHostNode.ID, UUID.randomUUID());
_node = factory.create(VirtualHostNode.class, nodeAttributes, broker);
- _node.setDesiredState(State.ACTIVE);
+ _node.start();
_virtualHost = (VirtualHostImpl<?,?,?>)_node.getVirtualHost();
@@ -152,7 +152,7 @@ public class VirtualHostMessageStoreTest extends QpidTestCase
if (_virtualHost != null)
{
VirtualHostNode<?> node = _virtualHost.getParent(VirtualHostNode.class);
- node.setDesiredState(State.STOPPED);
+ node.close();
}
}
finally
@@ -165,10 +165,12 @@ public class VirtualHostMessageStoreTest extends QpidTestCase
protected void reloadVirtualHost()
{
assertEquals("Virtual host node is not active", State.ACTIVE, _virtualHost.getState());
- State currentState = _node.setDesiredState(State.STOPPED);
+ _node.stop();
+ State currentState = _node.getState();
assertEquals("Virtual host node is not stopped", State.STOPPED, currentState);
- currentState = _node.setDesiredState(State.ACTIVE);
+ _node.start();
+ currentState = _node.getState();
assertEquals("Virtual host node is not active", State.ACTIVE, currentState);
_virtualHost = (VirtualHostImpl<?, ?, ?>) _node.getVirtualHost();
}
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/ExchangeRestTest.java b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/ExchangeRestTest.java
index 9b3bffd97a..51cb6dde1a 100644
--- a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/ExchangeRestTest.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/ExchangeRestTest.java
@@ -70,7 +70,7 @@ public class ExchangeRestTest extends QpidRestTestCase
}
}
- public void testSetExchangeAttributesUnsupported() throws Exception
+ public void testSetExchangeSupported() throws Exception
{
String exchangeName = getTestName();
String exchangeUrl = "exchange/test/test/" + exchangeName;
@@ -89,7 +89,10 @@ public class ExchangeRestTest extends QpidRestTestCase
attributes.put(Exchange.ALTERNATE_EXCHANGE, "amq.direct");
responseCode = getRestTestHelper().submitRequest(exchangeUrl, "PUT", attributes);
- assertEquals("Exchange update should be unsupported", 409, responseCode);
+ assertEquals("Exchange update should be supported", 200, responseCode);
+ exchange = getRestTestHelper().getJsonAsSingletonList(exchangeUrl);
+ assertNotNull("Exchange not found", exchange);
+ assertEquals("amq.direct",exchange.get(Exchange.ALTERNATE_EXCHANGE));
}
private void assertExchange(String exchangeName, Map<String, Object> exchange)
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/PortRestTest.java b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/PortRestTest.java
index 826922575d..7bf374e100 100644
--- a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/PortRestTest.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/PortRestTest.java
@@ -20,6 +20,7 @@
*/
package org.apache.qpid.systest.rest;
+import java.net.ServerSocket;
import java.net.URLDecoder;
import java.util.Arrays;
import java.util.Collection;
@@ -31,15 +32,18 @@ import java.util.Map;
import org.apache.qpid.server.BrokerOptions;
import org.apache.qpid.server.model.AuthenticationProvider;
+import org.apache.qpid.server.model.Plugin;
import org.apache.qpid.server.model.Port;
import org.apache.qpid.server.model.Protocol;
import org.apache.qpid.server.model.State;
import org.apache.qpid.server.model.Transport;
+import org.apache.qpid.server.model.port.JmxPort;
import org.apache.qpid.server.security.auth.manager.AnonymousAuthenticationManager;
import org.apache.qpid.test.utils.TestBrokerConfiguration;
public class PortRestTest extends QpidRestTestCase
{
+
public void testGet() throws Exception
{
List<Map<String, Object>> ports = getRestTestHelper().getJsonAsList("port/");
@@ -99,38 +103,65 @@ public class PortRestTest extends QpidRestTestCase
public void testPutRmiPortWithMinimumAttributes() throws Exception
{
- String portName = "test-port";
+ String portNameRMI = "test-port-rmi";
Map<String, Object> attributes = new HashMap<String, Object>();
- attributes.put(Port.NAME, portName);
- attributes.put(Port.PORT, findFreePort());
+ attributes.put(Port.NAME, portNameRMI);
+ int rmiPort = findFreePort();
+ attributes.put(Port.PORT, rmiPort);
attributes.put(Port.PROTOCOLS, Collections.singleton(Protocol.RMI));
- int responseCode = getRestTestHelper().submitRequest("port/" + portName, "PUT", attributes);
+ int responseCode = getRestTestHelper().submitRequest("port/" + portNameRMI, "PUT", attributes);
assertEquals("Unexpected response code", 201, responseCode);
- List<Map<String, Object>> portDetails = getRestTestHelper().getJsonAsList("port/" + portName);
+
+ List<Map<String, Object>> portDetails = getRestTestHelper().getJsonAsList("port/" + portNameRMI);
assertNotNull("Port details cannot be null", portDetails);
- assertEquals("Unexpected number of ports with name " + portName, 1, portDetails.size());
+ assertEquals("Unexpected number of ports with name " + portNameRMI, 1, portDetails.size());
Map<String, Object> port = portDetails.get(0);
Asserts.assertPortAttributes(port, State.QUIESCED);
+ String portNameJMX = "test-port-jmx";
+ attributes = new HashMap<String, Object>();
+ attributes.put(Port.NAME, portNameJMX);
+ attributes.put(Port.PORT, getNextAvailable(rmiPort + 1));
+ attributes.put(Port.PROTOCOLS, Collections.singleton(Protocol.JMX_RMI));
+ attributes.put(JmxPort.AUTHENTICATION_PROVIDER, TestBrokerConfiguration.ENTRY_NAME_AUTHENTICATION_PROVIDER);
+
+ responseCode = getRestTestHelper().submitRequest("port/" + portNameJMX, "PUT", attributes);
+ assertEquals("Unexpected response code", 201, responseCode);
+
+
+ portDetails = getRestTestHelper().getJsonAsList("port/" + portNameJMX);
+ assertNotNull("Port details cannot be null", portDetails);
+ assertEquals("Unexpected number of ports with name " + portNameRMI, 1, portDetails.size());
+ port = portDetails.get(0);
+ Asserts.assertPortAttributes(port, State.QUIESCED);
+
+
+ attributes.put(Plugin.TYPE, "MANAGEMENT-JMX");
+ attributes.put(Plugin.NAME, "JmxPlugin");
+ responseCode = getRestTestHelper().submitRequest("plugin/JmxPlugin", "PUT", attributes);
+ assertEquals("Unexpected response code", 201, responseCode);
+
+
+
// make sure that port is there after broker restart
restartBroker();
- portDetails = getRestTestHelper().getJsonAsList("port/" + portName);
+ portDetails = getRestTestHelper().getJsonAsList("port/" + portNameRMI);
assertNotNull("Port details cannot be null", portDetails);
- assertEquals("Unexpected number of ports with name " + portName, 1, portDetails.size());
+ assertEquals("Unexpected number of ports with name " + portNameRMI, 1, portDetails.size());
port = portDetails.get(0);
Asserts.assertPortAttributes(port, State.ACTIVE);
// try to add a second RMI port
- portName = portName + "2";
+ portNameRMI = portNameRMI + "2";
attributes = new HashMap<String, Object>();
- attributes.put(Port.NAME, portName);
+ attributes.put(Port.NAME, portNameRMI);
attributes.put(Port.PORT, findFreePort());
attributes.put(Port.PROTOCOLS, Collections.singleton(Protocol.RMI));
- responseCode = getRestTestHelper().submitRequest("port/" + portName, "PUT", attributes);
+ responseCode = getRestTestHelper().submitRequest("port/" + portNameRMI, "PUT", attributes);
assertEquals("Adding of a second RMI port should fail", 409, responseCode);
}
@@ -301,25 +332,28 @@ public class PortRestTest extends QpidRestTestCase
Asserts.assertPortAttributes(portData, State.QUIESCED);
}
- public void testNewPortQuiescedIfPortNumberWasUsed() throws Exception
+ public void testNewPortErroredIfPortNumberInUse() throws Exception
{
String ampqPortName = TestBrokerConfiguration.ENTRY_NAME_AMQP_PORT;
Map<String, Object> portData = getRestTestHelper().getJsonAsSingletonList("port/" + URLDecoder.decode(ampqPortName, "UTF-8"));
int amqpPort = (Integer)portData.get(Port.PORT);
+ ServerSocket socket = new ServerSocket(0);
+ int occupiedPort = socket.getLocalPort();
+
int deleteResponseCode = getRestTestHelper().submitRequest("port/" + ampqPortName, "DELETE");
assertEquals("Port deletion should be allowed", 200, deleteResponseCode);
String newPortName = "reused-port";
Map<String, Object> attributes = new HashMap<String, Object>();
attributes.put(Port.NAME, newPortName);
- attributes.put(Port.PORT, amqpPort); // reuses port that was previously in use
+ attributes.put(Port.PORT, occupiedPort); // port in use
attributes.put(Port.AUTHENTICATION_PROVIDER, TestBrokerConfiguration.ENTRY_NAME_AUTHENTICATION_PROVIDER);
int responseCode = getRestTestHelper().submitRequest("port/" + newPortName, "PUT", attributes);
assertEquals("Unexpected response code for port creation", 201, responseCode);
portData = getRestTestHelper().getJsonAsSingletonList("port/" + URLDecoder.decode(newPortName, "UTF-8"));
- Asserts.assertPortAttributes(portData, State.QUIESCED);
+ Asserts.assertPortAttributes(portData, State.ERRORED);
}
}
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostRestTest.java b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostRestTest.java
index d3dad3ddf5..546898eb7b 100644
--- a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostRestTest.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/VirtualHostRestTest.java
@@ -29,20 +29,20 @@ import java.util.Map;
import javax.jms.Session;
import javax.servlet.http.HttpServletResponse;
+import org.codehaus.jackson.JsonGenerationException;
+import org.codehaus.jackson.map.JsonMappingException;
+
import org.apache.qpid.client.AMQConnection;
import org.apache.qpid.server.model.Exchange;
import org.apache.qpid.server.model.Queue;
import org.apache.qpid.server.model.VirtualHost;
+import org.apache.qpid.server.model.VirtualHostNode;
import org.apache.qpid.server.queue.LastValueQueue;
import org.apache.qpid.server.queue.PriorityQueue;
import org.apache.qpid.server.queue.SortedQueue;
-import org.apache.qpid.server.virtualhost.AbstractVirtualHost;
-
-import org.apache.qpid.server.model.VirtualHostNode;
import org.apache.qpid.server.store.DurableConfigurationStore;
+import org.apache.qpid.server.virtualhost.AbstractVirtualHost;
import org.apache.qpid.util.FileUtils;
-import org.codehaus.jackson.JsonGenerationException;
-import org.codehaus.jackson.map.JsonMappingException;
public class VirtualHostRestTest extends QpidRestTestCase
{
@@ -147,7 +147,7 @@ public class VirtualHostRestTest extends QpidRestTestCase
assertEquals("Host should be deleted", 1, hosts.size());
}
- public void testUpdateActiveHostFails() throws Exception
+ public void testUpdateActiveHost() throws Exception
{
String hostToUpdate = TEST3_VIRTUALHOST;
String restHostUrl = "virtualhost/" + hostToUpdate + "/" + hostToUpdate;
@@ -156,16 +156,16 @@ public class VirtualHostRestTest extends QpidRestTestCase
Map<String, Object> newAttributes = new HashMap<String, Object>();
newAttributes.put(VirtualHost.NAME, hostToUpdate);
- newAttributes.put("fakeAttribute", "value");
+ newAttributes.put(VirtualHost.DESCRIPTION, "This is a virtual host");
int response = getRestTestHelper().submitRequest(restHostUrl, "PUT", newAttributes);
- assertEquals("Unexpected response code", 409, response);
+ assertEquals("Unexpected response code", 200, response);
restartBroker();
Map<String, Object> rereadHostDetails = getRestTestHelper().getJsonAsSingletonList(restHostUrl);
Asserts.assertVirtualHost(hostToUpdate, rereadHostDetails);
- assertFalse(rereadHostDetails.containsKey("fakeAttribute"));
+ assertEquals("This is a virtual host", rereadHostDetails.get(VirtualHost.DESCRIPTION));
}
public void testPutCreateQueue() throws Exception
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java
index 0f9df8795e..8a9da5d93c 100644
--- a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/acl/BrokerACLTest.java
@@ -836,7 +836,7 @@ public class BrokerACLTest extends QpidRestTestCase
assertAccessControlProviderExistence(accessControlProviderName, false);
}
- public void testSetAccessControlProviderAttributesAllowedButUnsupported() throws Exception
+ public void testSetAccessControlProviderAttributesAllowed() throws Exception
{
getRestTestHelper().setUsernameAndPassword(ALLOWED_USER, ALLOWED_USER);
@@ -854,7 +854,7 @@ public class BrokerACLTest extends QpidRestTestCase
attributes.put(GroupProvider.TYPE, FileBasedGroupProviderImpl.GROUP_FILE_PROVIDER_TYPE);
attributes.put(FileBasedGroupProvider.PATH, "/path/to/file");
responseCode = getRestTestHelper().submitRequest("accesscontrolprovider/" + accessControlProviderName, "PUT", attributes);
- assertEquals("Setting of access control provider attributes should be allowed but not supported", 409, responseCode);
+ assertEquals("Setting of access control provider attributes should be allowed", 200, responseCode);
}
public void testSetAccessControlProviderAttributesDenied() throws Exception
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java b/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
index 2bda6872a5..073fae3a7a 100755
--- a/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
@@ -753,7 +753,7 @@ public class QpidBrokerTestCase extends QpidTestCase
}
if (exceptionOccured)
{
- throw new RuntimeException("Exception occured on stopping of test broker. Please, examine logs for details");
+ throw new RuntimeException("Exception occurred on stopping of test broker. Please, examine logs for details");
}
}