You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ag...@apache.org on 2009/02/27 14:35:21 UTC

svn commit: r748515 - /qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/

Author: agazzarini
Date: Fri Feb 27 13:35:21 2009
New Revision: 748515

URL: http://svn.apache.org/viewvc?rev=748515&view=rev
Log:
QPID-1579 : WSDMADapter is no longer a big test case. Instead there's a separated test case class for each WSDM Interface. As conseguence of that, WSDM is simply a grouping suite.

Added:
    qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/GetResourcePropertiesTestCase.java
Modified:
    qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/BaseWsDmAdapterTestCase.java
    qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/GetMultipleResourcePropertiesTestCase.java
    qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/MetadataExchangeInterfaceTestCase.java
    qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/OperationInvocationInterfaceTestCase.java
    qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/SetResourcePropertiesTestCase.java
    qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/WsDmAdapterTest.java

Modified: qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/BaseWsDmAdapterTestCase.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/BaseWsDmAdapterTestCase.java?rev=748515&r1=748514&r2=748515&view=diff
==============================================================================
--- qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/BaseWsDmAdapterTestCase.java (original)
+++ qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/BaseWsDmAdapterTestCase.java Fri Feb 27 13:35:21 2009
@@ -21,15 +21,12 @@
 package org.apache.qpid.management.wsdm;
 
 import java.lang.management.ManagementFactory;
-import java.lang.reflect.Array;
 import java.net.URI;
 import java.util.UUID;
 
-import javax.management.MBeanAttributeInfo;
 import javax.management.MBeanInfo;
 import javax.management.MBeanServer;
 import javax.management.ObjectName;
-import javax.xml.namespace.QName;
 
 import junit.framework.TestCase;
 
@@ -112,46 +109,7 @@
       			0,
       			members.length);
 	}
-	
-	/**
-	 * Test the WS-RP GetResourceProperty interface of the WS-DM adapter.
-	 * 
-	 * <br>precondition : a ws resource exists and is registered. 
-	 * <br>postcondition : property values coming from WS-DM resource are the same of the JMX interface.
-	 */
-	public void testGetResourcePropertiesOK() throws Exception
-	{
-		MBeanAttributeInfo [] attributesMetadata = _mbeanInfo.getAttributes();
-		for (MBeanAttributeInfo attributeMetadata : attributesMetadata)
-		{
-			String name = attributeMetadata.getName();
-			Object propertyValues = _resourceClient.getPropertyAsObject(
-					new QName(
-							Names.NAMESPACE_URI,
-							name,
-							Names.PREFIX),
-					Class.forName(attributeMetadata.getType()));
-			
-			int length = Array.getLength(propertyValues);
-			if (length != 0)
-			{
-				Object propertyValue = Array.get(propertyValues, 0);
 				
-				assertEquals(
-						"Comparison failed for property "+name,
-						_managementServer.getAttribute(_resourceObjectName,name),
-						propertyValue);
-			} else {
-				assertNull(
-						String.format(
-								"\"%s\" property value shouldn't be null. Its value is %s",
-								name,
-								_managementServer.getAttribute(_resourceObjectName,name)),
-								_managementServer.getAttribute(_resourceObjectName,name));
-			}
-		}
-	}
-			
 	/**
 	 * Creates a service group client reference.
 	 * 

Modified: qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/GetMultipleResourcePropertiesTestCase.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/GetMultipleResourcePropertiesTestCase.java?rev=748515&r1=748514&r2=748515&view=diff
==============================================================================
--- qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/GetMultipleResourcePropertiesTestCase.java (original)
+++ qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/GetMultipleResourcePropertiesTestCase.java Fri Feb 27 13:35:21 2009
@@ -54,8 +54,7 @@
 		try 
 		{
 			_resourceClient.getEndpointReference().removeParameter(Names.RESOURCE_ID_QNAME);
-			_resourceClient.getEndpointReference().addParameter(Names.RESOURCE_ID_QNAME,"lablabalbal");
-			_resourceClient.setTrace(true);
+			_resourceClient.getEndpointReference().addParameter(Names.RESOURCE_ID_QNAME,"lablabalbal");			
 			
 			_resourceClient.getMultipleResourceProperties(new QName[]{});
 		} catch(SoapFault expected)

Added: qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/GetResourcePropertiesTestCase.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/GetResourcePropertiesTestCase.java?rev=748515&view=auto
==============================================================================
--- qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/GetResourcePropertiesTestCase.java (added)
+++ qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/GetResourcePropertiesTestCase.java Fri Feb 27 13:35:21 2009
@@ -0,0 +1,105 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.management.wsdm;
+
+import java.lang.reflect.Array;
+
+import javax.management.MBeanAttributeInfo;
+import javax.xml.namespace.QName;
+
+import org.apache.muse.ws.addressing.soap.SoapFault;
+import org.apache.muse.ws.resource.WsrfConstants;
+import org.apache.qpid.management.Names;
+
+/**
+ * Test case for Web Service Resource Properties interfaces.
+ * Those interfaces are defined on http://docs.oasis-open.org/wsrf/wsrf-ws_resource_properties-1.2-spec-os.pdf
+ * (Web Services Resource Properties 1.2 - (WS-ResourceProperties).
+ * For a better explanation see chapter 5 of the specification above.
+ * 
+ * @author Andrea Gazzarini
+ */
+public class GetResourcePropertiesTestCase extends BaseWsDmAdapterTestCase
+{
+	
+	/**
+	 * Test the WS-RP GetResourceProperty interface of the WS-DM adapter.
+	 * 
+	 * <br>precondition : a ws resource exists and is registered. 
+	 * <br>postcondition : property values coming from WS-DM resource are the same of the JMX interface.
+	 */
+	public void testGetResourcePropertiesOK() throws Exception
+	{
+		MBeanAttributeInfo [] attributesMetadata = _mbeanInfo.getAttributes();
+		for (MBeanAttributeInfo attributeMetadata : attributesMetadata)
+		{
+			String name = attributeMetadata.getName();
+			Object propertyValues = _resourceClient.getPropertyAsObject(
+					new QName(
+							Names.NAMESPACE_URI,
+							name,
+							Names.PREFIX),
+					Class.forName(attributeMetadata.getType()));
+			
+			int length = Array.getLength(propertyValues);
+			if (length != 0)
+			{
+				Object propertyValue = Array.get(propertyValues, 0);
+				
+				assertEquals(
+						"Comparison failed for property "+name,
+						_managementServer.getAttribute(_resourceObjectName,name),
+						propertyValue);
+			} else {
+				assertNull(
+						String.format(
+								"\"%s\" property value shouldn't be null. Its value is %s",
+								name,
+								_managementServer.getAttribute(_resourceObjectName,name)),
+								_managementServer.getAttribute(_resourceObjectName,name));
+			}
+		}
+	}
+	
+	/**
+	 * Tests the GetMultipleResourceProperties interface when the request contains 
+	 * an unknwon target resource.
+	 * 
+	 * <br>precondition : the GetMultipleResourceProperties request contains an unknwon resource.
+	 * <br>postcondition : a SoapFault is thrown and the corresponding detail contains an 
+	 * 								UnknownResourceFault element.
+	 */
+	public void testGetResourcePropertiesKO_WithUnknownResourceFault() throws Exception
+	{
+		try 
+		{
+			_resourceClient.getEndpointReference().removeParameter(Names.RESOURCE_ID_QNAME);
+			_resourceClient.getEndpointReference().addParameter(Names.RESOURCE_ID_QNAME,"lablabalbal");
+			
+			_resourceClient.getResourceProperty(new QName("a","b","c"));
+		} catch(SoapFault expected)
+		{
+			assertEquals(
+					WsrfConstants.RESOURCE_UNKNOWN_QNAME.getLocalPart(),
+					expected.getDetail().getLocalName());
+		}
+	}	
+}

Modified: qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/MetadataExchangeInterfaceTestCase.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/MetadataExchangeInterfaceTestCase.java?rev=748515&r1=748514&r2=748515&view=diff
==============================================================================
--- qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/MetadataExchangeInterfaceTestCase.java (original)
+++ qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/MetadataExchangeInterfaceTestCase.java Fri Feb 27 13:35:21 2009
@@ -25,8 +25,11 @@
 import org.apache.muse.core.proxy.ProxyHandler;
 import org.apache.muse.core.proxy.ReflectionProxyHandler;
 import org.apache.muse.util.xml.XmlUtils;
+import org.apache.muse.ws.addressing.soap.SoapFault;
 import org.apache.muse.ws.metadata.WsxConstants;
+import org.apache.muse.ws.resource.WsrfConstants;
 import org.apache.muse.ws.resource.metadata.WsrmdConstants;
+import org.apache.qpid.management.Names;
 import org.w3c.dom.Element;
 
 /**
@@ -125,6 +128,29 @@
 	}	
 
 	/**
+	 * Test the MetadataExchange interface with an unknown metadata dialect.
+	 * 
+	 * <br>precondition : the GetMetadata request contains an unknown dialect. 
+	 * <br>postcondition : the returned metadata section is empty.
+	 */
+	@SuppressWarnings("unchecked")
+	public void testGetMetadataKO_WithoutUnknownResourceFault() throws Exception
+	{
+		try 
+		{
+			_resourceClient.getEndpointReference().removeParameter(Names.RESOURCE_ID_QNAME);
+			_resourceClient.getEndpointReference().addParameter(Names.RESOURCE_ID_QNAME,"lablabalbal");
+	
+			_resourceClient.invoke(getProxyHandler(), new Object[]{""});
+		} catch(SoapFault expected)
+		{
+			assertEquals(
+					WsrfConstants.RESOURCE_UNKNOWN_QNAME.getLocalPart(),
+					expected.getDetail().getLocalName());
+		}
+	}		
+	
+	/**
 	 * Returns a proxy handler used for working with metadata exchange
 	 * interface.
 	 * 

Modified: qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/OperationInvocationInterfaceTestCase.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/OperationInvocationInterfaceTestCase.java?rev=748515&r1=748514&r2=748515&view=diff
==============================================================================
--- qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/OperationInvocationInterfaceTestCase.java (original)
+++ qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/OperationInvocationInterfaceTestCase.java Fri Feb 27 13:35:21 2009
@@ -44,7 +44,6 @@
  */
 public class OperationInvocationInterfaceTestCase extends BaseWsDmAdapterTestCase
 {
-	private final Long _retCodeOk = new Long(0);
 	private Map<String, ProxyHandler> _invocationHandlers = createInvocationHandlers();
 
 	/**
@@ -66,10 +65,8 @@
 				_invocationHandlers.get("echoWithByteArray"), 
 				new Object[]{expectedByteResult});
 
-		Method getStatusCode = result.getClass().getMethod("getStatusCode");
 		Method getOutputParameters = result.getClass().getMethod("getOutputParameters");
 		
-		assertEquals(_retCodeOk,getStatusCode.invoke(result));
 		Map<String,Object> out = (Map<String, Object>) getOutputParameters.invoke(result);
 		
 		assertEquals("Output parameters must be 1.",1,out.size());
@@ -91,11 +88,7 @@
 				_invocationHandlers.get("voidWithoutArguments"), 
 				null);
 
-		Method getStatusCode = result.getClass().getMethod("getStatusCode");
-		assertEquals(
-				"Something was wrong...expected return code is "+_retCodeOk,
-				_retCodeOk,
-				getStatusCode.invoke(result));
+		assertNotNull(result);
 	}
 
 	/**
@@ -137,10 +130,8 @@
 				_invocationHandlers.get("echoWithUUID"), 
 				new Object[]{expectedUuid});
 
-		Method getStatusCode = result.getClass().getMethod("getStatusCode");
 		Method getOutputParameters = result.getClass().getMethod("getOutputParameters");
 		
-		assertEquals(_retCodeOk,getStatusCode.invoke(result));
 		Map<String,Object> out = (Map<String, Object>) getOutputParameters.invoke(result);
 		
 		assertEquals("Output parameters must be 1.",1,out.size());
@@ -176,10 +167,8 @@
 				_invocationHandlers.get("echoWithMap"), 
 				new Object[]{expectedMap});
 
-		Method getStatusCode = result.getClass().getMethod("getStatusCode");
 		Method getOutputParameters = result.getClass().getMethod("getOutputParameters");
 		
-		assertEquals(_retCodeOk,getStatusCode.invoke(result));
 		Map<String,Object> out = (Map<String, Object>) ((Map<String, Object>) getOutputParameters.invoke(result)).get("map");
 		
 		assertEquals("Output parameters must be 10.",10,out.size());
@@ -245,9 +234,7 @@
 					expectedUriResult,
 					expectedDateResult});
 
-		Method getStatusCode = result.getClass().getMethod("getStatusCode");
 		Method getOutputParameters = result.getClass().getMethod("getOutputParameters");
-		assertEquals(_retCodeOk,getStatusCode.invoke(result));
 		Map<String,Object> out = (Map<String, Object>) getOutputParameters.invoke(result);
 		
 		assertEquals("Output parameters must be 9.",9,out.size());
@@ -315,9 +302,7 @@
 					expectedUriResult,
 					expectedDateResult});
 
-		Method getStatusCode = result.getClass().getMethod("getStatusCode");
 		Method getOutputParameters = result.getClass().getMethod("getOutputParameters");
-		assertEquals(_retCodeOk,getStatusCode.invoke(result));
 		Map<String,Object> out = (Map<String, Object>) getOutputParameters.invoke(result);
 		
 		assertEquals("Output parameters must be 9.",9,out.size());
@@ -372,9 +357,7 @@
 					expectedIntegerResult,
 					expectedShortResult});
 
-		Method getStatusCode = result.getClass().getMethod("getStatusCode");
 		Method getOutputParameters = result.getClass().getMethod("getOutputParameters");
-		assertEquals(_retCodeOk,getStatusCode.invoke(result));
 		Map<String,Object> out = (Map<String, Object>) getOutputParameters.invoke(result);
 		
 		assertEquals("Output parameters must be 6.",6,out.size());

Modified: qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/SetResourcePropertiesTestCase.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/SetResourcePropertiesTestCase.java?rev=748515&r1=748514&r2=748515&view=diff
==============================================================================
--- qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/SetResourcePropertiesTestCase.java (original)
+++ qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/SetResourcePropertiesTestCase.java Fri Feb 27 13:35:21 2009
@@ -173,7 +173,6 @@
 		{
 			_resourceClient.getEndpointReference().removeParameter(Names.RESOURCE_ID_QNAME);
 			_resourceClient.getEndpointReference().addParameter(Names.RESOURCE_ID_QNAME,"lablabalbal");
-			_resourceClient.setTrace(true);
 			
 			_resourceClient.updateResourceProperty(
 					new QName(
@@ -203,7 +202,6 @@
 		{
 			_resourceClient.getEndpointReference().removeParameter(Names.RESOURCE_ID_QNAME);
 			_resourceClient.getEndpointReference().addParameter(Names.RESOURCE_ID_QNAME,"lablabalbal");
-			_resourceClient.setTrace(true);
 			
 			_resourceClient.insertResourceProperty(
 					new QName(

Modified: qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/WsDmAdapterTest.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/WsDmAdapterTest.java?rev=748515&r1=748514&r2=748515&view=diff
==============================================================================
--- qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/WsDmAdapterTest.java (original)
+++ qpid/trunk/qpid/java/management/client/src/test/java/org/apache/qpid/management/wsdm/WsDmAdapterTest.java Fri Feb 27 13:35:21 2009
@@ -131,6 +131,7 @@
 		suite.addTestSuite(GetResourcePropertyDocumentTestCase.class);
 		suite.addTestSuite(SetResourcePropertiesTestCase.class);		
 		suite.addTestSuite(GetMultipleResourcePropertiesTestCase.class);	
+		suite.addTestSuite(GetResourcePropertiesTestCase.class);			
 		return new WsDmAdapterTestSetup(suite);
 	}
 	



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org