summaryrefslogtreecommitdiffstats
path: root/sca-java-1.x/trunk/itest/wsdlgen-verify/src/test/java/wsdlgen/verify/DynamicSDOTestCase.java
diff options
context:
space:
mode:
Diffstat (limited to 'sca-java-1.x/trunk/itest/wsdlgen-verify/src/test/java/wsdlgen/verify/DynamicSDOTestCase.java')
-rw-r--r--sca-java-1.x/trunk/itest/wsdlgen-verify/src/test/java/wsdlgen/verify/DynamicSDOTestCase.java173
1 files changed, 41 insertions, 132 deletions
diff --git a/sca-java-1.x/trunk/itest/wsdlgen-verify/src/test/java/wsdlgen/verify/DynamicSDOTestCase.java b/sca-java-1.x/trunk/itest/wsdlgen-verify/src/test/java/wsdlgen/verify/DynamicSDOTestCase.java
index 3445d2f06b..cc2bd46a72 100644
--- a/sca-java-1.x/trunk/itest/wsdlgen-verify/src/test/java/wsdlgen/verify/DynamicSDOTestCase.java
+++ b/sca-java-1.x/trunk/itest/wsdlgen-verify/src/test/java/wsdlgen/verify/DynamicSDOTestCase.java
@@ -19,154 +19,63 @@
package wsdlgen.verify;
-import java.io.BufferedReader;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.net.URL;
-
-import javax.wsdl.Binding;
-import javax.wsdl.Definition;
-import javax.wsdl.Message;
-import javax.wsdl.Part;
-import javax.wsdl.Operation;
-import javax.wsdl.Output;
-import javax.wsdl.Port;
-import javax.wsdl.PortType;
-import javax.wsdl.Service;
-import javax.wsdl.Types;
-import javax.wsdl.extensions.ExtensibilityElement;
-import javax.wsdl.extensions.schema.Schema;
-import javax.wsdl.factory.WSDLFactory;
-import javax.wsdl.xml.WSDLReader;
-import javax.xml.namespace.QName;
-import javax.xml.transform.Result;
-import javax.xml.transform.Source;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
-import junit.framework.TestCase;
-
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Ignore;
+import org.junit.Test;
import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import org.apache.tuscany.sca.host.embedded.SCADomain;
+import static org.junit.Assert.assertEquals;
/**
- * Test ?wsdl works and that the returned WSDL has the correct endpoint
+ * Test ?wsdl works and that the returned WSDL is correct
*
* @version $Rev: 814373 $ $Date: 2009-09-13 19:06:29 +0100 (Sun, 13 Sep 2009) $
*/
-public class DynamicSDOTestCase extends TestCase {
- private static final String SCHEMA_NS = "http://www.w3.org/2001/XMLSchema";
- private static final String SCHEMA_NAME = "schema";
- private static final QName SCHEMA_QNAME = new QName(SCHEMA_NS, SCHEMA_NAME);
-
- private SCADomain domain;
-
- /**
- * Tests ?wsdl works and produces xs:anyType for commonj.sdo.DataObject
- */
- public void testDynamicSDO() throws Exception {
- InputStream inp = new URL("http://localhost:8085/DataService?wsdl").openStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(inp));
- String line;
- while((line = br.readLine()) != null) {
- System.out.println(line);
- }
- br.close();
-
- WSDLReader wsdlReader = WSDLFactory.newInstance().newWSDLReader();
- wsdlReader.setFeature("javax.wsdl.verbose",false);
- wsdlReader.setFeature("javax.wsdl.importDocuments",true);
-
- Definition definition = wsdlReader.readWSDL("http://localhost:8085/DataService?wsdl");
- assertNotNull(definition);
- Service service = definition.getService(new QName("http://verify.wsdlgen/",
- "GetDataServiceWithoutExceptionService"));
- Port port = service.getPort("GetDataServiceWithoutExceptionPort");
- Binding binding = port.getBinding();
- PortType portType = binding.getPortType();
+public class DynamicSDOTestCase extends BaseFramework {
- // find wrapper element for getMessageSDO return type
- Operation op = portType.getOperation("getMessageSDO", null, null);
- Output out = op.getOutput();
- Message msg = out.getMessage();
- Part part = msg.getPart(msg.getQName().getLocalPart());
- QName elementQName = part.getElementName();
-
- // find schema definition for wrapper element
- Types types = definition.getTypes();
- String elementNS = elementQName.getNamespaceURI();
- Element schema = null;
- for (Object ext : types.getExtensibilityElements()) {
- ExtensibilityElement extElement = (ExtensibilityElement)ext;
- if (SCHEMA_QNAME.equals(extElement.getElementType())) {
- if (extElement instanceof Schema) {
- Element schemaElement = ((Schema)extElement).getElement();
- if (elementNS.equals(schemaElement.getAttribute("targetNamespace"))) {
- schema = schemaElement;
- break;
- }
- }
- }
- }
-
- // find wrapper element definition in schema
- String elementName = elementQName.getLocalPart();
- Element wrapper = null;
- NodeList childNodes = schema.getElementsByTagNameNS(SCHEMA_NS, "element");
- for (int i = 0; i < childNodes.getLength(); i++) {
- Node childNode = childNodes.item(i);
- if (childNode instanceof Element) {
- String name = ((Element)childNode).getAttribute("name");
- if (elementName.equals(name)) {
- wrapper = (Element)childNode;
- break;
- }
- }
- }
-
- // find xs:complexType child element
- childNodes = wrapper.getElementsByTagNameNS(SCHEMA_NS, "complexType");
- Element complexType = (Element)childNodes.item(0);
+ @Test
+ public void testGetMessage() throws Exception {
+ assertEquals("xs:base64Binary", returnType("getMessage"));
+ }
- // find xs:sequence child element
- childNodes = complexType.getElementsByTagNameNS(SCHEMA_NS, "sequence");
- Element sequence = (Element)childNodes.item(0);
+ @Test
+ public void testGetMessageList() throws Exception {
+ Element retElement = returnElement("getMessageList");
+ assertEquals("xs:base64Binary", retElement.getAttribute("type"));
+ assertEquals("unbounded", retElement.getAttribute("maxOccurs"));
+ }
- // find xs:element child element
- childNodes = sequence.getElementsByTagNameNS(SCHEMA_NS, "element");
- Element returnValue = (Element)childNodes.item(0);
+ @Test
+ public void testGetMessageSDO() throws Exception {
+ assertEquals("xs:anyType", returnType("getMessageSDO"));
+ }
- // verify that return type is xs:anyType
- assertEquals("xs:anyType", returnValue.getAttribute("type"));
+ @Test
+ public void testGetMessageListSDOList() throws Exception {
+ Element retElement = returnElement("getMessageListSDOList");
+ assertEquals("xs:anyType", retElement.getAttribute("type"));
+ assertEquals("unbounded", retElement.getAttribute("maxOccurs"));
}
- /*
- * Used for debugging DOM problems
- */
- private void printDOM(Node node){
- try {
- Transformer transformer = TransformerFactory.newInstance().newTransformer();
- Source source = new DOMSource(node);
- Result result = new StreamResult(System.out);
- transformer.transform(source, result);
- } catch (Exception ex){
- ex.printStackTrace();
- }
+ @Test
+ public void testGetMessageListSDOArr() throws Exception {
+ Element retElement = returnElement("getMessageListSDOArr");
+ assertEquals("xs:anyType", retElement.getAttribute("type"));
+ assertEquals("unbounded", retElement.getAttribute("maxOccurs"));
}
- @Override
- protected void setUp() throws Exception {
- domain = SCADomain.newInstance("dynamic-sdo.composite");
+ @Test
+ public void testGetMessageListSDOinSDO() throws Exception {
+ assertEquals("xs:anyType", returnType("getMessageListSDOinSDO"));
}
- @Override
- protected void tearDown() throws Exception {
- domain.close();
+ @BeforeClass
+ public static void setUpBeforeClass() throws Exception {
+ BaseFramework.start("GetDataServiceWithoutException");
}
+ @AfterClass
+ public static void tearDownAfterClass() throws Exception {
+ BaseFramework.stop();
+ }
}