Author: alessio.soldano(a)jboss.com
Date: 2009-04-03 05:29:52 -0400 (Fri, 03 Apr 2009)
New Revision: 9711
Added:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2593/
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2593/JBWS2593TestCase.java
framework/trunk/testsuite/test/resources/jaxws/jbws2593/
framework/trunk/testsuite/test/resources/jaxws/jbws2593/wsdl/
framework/trunk/testsuite/test/resources/jaxws/jbws2593/wsdl/JBWS2593TestDOCService.wsdl
framework/trunk/testsuite/test/resources/jaxws/jbws2593/wsdl/JBWS2593TestRPCService.wsdl
Log:
[JBWS-2593] Adding testcases
Added:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2593/JBWS2593TestCase.java
===================================================================
---
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2593/JBWS2593TestCase.java
(rev 0)
+++
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2593/JBWS2593TestCase.java 2009-04-03
09:29:52 UTC (rev 9711)
@@ -0,0 +1,131 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.test.ws.jaxws.jbws2593;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileReader;
+
+import org.jboss.wsf.test.JBossWSTest;
+
+/**
+ * [JBWS-2593] WSConsume does not generate @XmlJavaTypeAdapter in SEI
+ *
+ *
http://jira.jboss.org/jira/browse/JBWS-2593
+ *
+ * @author alessio.soldano(a)jboss.com
+ * @since 02-Apr-2009
+ */
+public class JBWS2593TestCase extends JBossWSTest
+{
+ private static final String FS = System.getProperty("file.separator"); //
'/' on unix, '\' on windows
+ private static final String PS = System.getProperty("path.separator"); //
':' on unix, ';' on windows
+ private static final String EXT = ":".equals(PS) ? ".sh" :
".bat";
+
+ private String WSDL_LOCATION_RPC = "jaxws" + FS + "jbws2593" + FS
+ "wsdl" + FS + "JBWS2593TestRPCService.wsdl";
+
+ private String WSDL_LOCATION_DOC = "jaxws" + FS + "jbws2593" + FS
+ "wsdl" + FS + "JBWS2593TestDOCService.wsdl";
+
+ private String JBOSS_HOME;
+ private String TEST_DIR;
+
+ private String origJavaHome;
+
+ protected void setUp() throws Exception
+ {
+ super.setUp();
+
+ JBOSS_HOME = System.getProperty("jboss.home");
+ TEST_DIR = createResourceFile("..").getAbsolutePath();
+ origJavaHome = System.getProperty("java.home");
+
+ // the script requires the system JAVA_HOME, which points to the JDK not the JRE
+ if (origJavaHome.indexOf(FS + "jre") != -1)
+ {
+ String JDK_HOME = origJavaHome.substring(0, origJavaHome.indexOf(FS +
"jre"));
+ System.setProperty("java.home", JDK_HOME);
+ }
+ }
+
+ protected void tearDown() throws Exception
+ {
+ // reset surefire's JAVA_HOME
+ System.setProperty("java.home", origJavaHome);
+ }
+
+ public void testRPC() throws Exception
+ {
+ this.internalTest(true);
+ }
+
+ public void testDOC() throws Exception
+ {
+ this.internalTest(false);
+ }
+
+ private void internalTest(boolean rpc) throws Exception
+ {
+ // use absolute path for the output to be re-usable
+ String absWsdlLoc = getResourceFile(rpc ? WSDL_LOCATION_RPC :
WSDL_LOCATION_DOC).getAbsolutePath();
+ String absOutput = new File(TEST_DIR, "wsconsume" + FS +
"java").getAbsolutePath();
+ String command = JBOSS_HOME + FS + "bin" + FS + "wsconsume" +
EXT + " -v -k -o " + absOutput + " " + absWsdlLoc;
+ executeCommand(command, "wsconsume");
+ File javaSource = new File(TEST_DIR, "wsconsume" + FS + "java"
+ FS + "org" + FS + "jbws2593_" + (rpc ? "rpc" :
"doc") + FS + "ParameterModeTest.java");
+ assertTrue("Service endpoint interface not generated",
javaSource.exists());
+ String contents = readFile(javaSource);
+ assertEquals(2, countOccurrences(contents, "@XmlJavaTypeAdapter"));
+ assertEquals(2, countOccurrences(contents, "HexBinaryAdapter.class"));
+ }
+
+ public static int countOccurrences(String string, String textToSearchFor)
+ {
+ int count = 0;
+ int index = 0;
+ while ((index = string.indexOf(textToSearchFor, index)) != -1)
+ {
+ ++index;
+ ++count;
+ }
+ return count;
+ }
+
+ private static String readFile(File file) throws Exception
+ {
+ BufferedReader input = new BufferedReader(new FileReader(file));
+ StringBuilder sb = new StringBuilder();
+ try
+ {
+ String line = null;
+ while ((line = input.readLine()) != null)
+ {
+ sb.append(line);
+ sb.append(System.getProperty("line.separator"));
+ }
+ }
+ finally
+ {
+ input.close();
+ }
+ return sb.toString();
+ }
+
+}
Property changes on:
framework/trunk/testsuite/test/java/org/jboss/test/ws/jaxws/jbws2593/JBWS2593TestCase.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added:
framework/trunk/testsuite/test/resources/jaxws/jbws2593/wsdl/JBWS2593TestDOCService.wsdl
===================================================================
---
framework/trunk/testsuite/test/resources/jaxws/jbws2593/wsdl/JBWS2593TestDOCService.wsdl
(rev 0)
+++
framework/trunk/testsuite/test/resources/jaxws/jbws2593/wsdl/JBWS2593TestDOCService.wsdl 2009-04-03
09:29:52 UTC (rev 9711)
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://jbws2593-doc.org/"
xmlns:s="http://jbws2593-doc.org/xsd"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" name="ParameterModeTest"
targetNamespace="http://jbws2593-doc.org/">
+ <types>
+ <xsd:schema
targetNamespace="http://jbws2593-doc.org/xsd"
elementFormDefault="qualified">
+ <xsd:element name="HexBinaryElement"
type="xsd:hexBinary"/>
+ </xsd:schema>
+ </types>
+ <message name="inSimpleTypesRequest">
+ <part name="varHexBinary" element="s:HexBinaryElement" />
+ </message>
+ <message name="inSimpleTypesResponse">
+ <part name="return" element="s:HexBinaryElement" />
+ </message>
+ <portType name="ParameterModeTest">
+ <operation name="echoInSimpleTypes">
+ <input message="tns:inSimpleTypesRequest" />
+ <output message="tns:inSimpleTypesResponse" />
+ </operation>
+ </portType>
+ <binding name="ParameterModeTestBinding"
type="tns:ParameterModeTest">
+ <soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" />
+ <operation name="echoInSimpleTypes">
+ <soap:operation soapAction="" />
+ <input>
+ <soap:body use="literal"/>
+ </input>
+ <output>
+ <soap:body use="literal"/>
+ </output>
+ </operation>
+ </binding>
+ <service name="ParameterModeTestService">
+ <port name="ParameterModeTestPort"
binding="tns:ParameterModeTestBinding">
+ <soap:address
location="http://localhost:8000/W2JRLParameterModeTest/jaxws/ParameterModeTest"
/>
+ </port>
+ </service>
+</definitions>
+
Property changes on:
framework/trunk/testsuite/test/resources/jaxws/jbws2593/wsdl/JBWS2593TestDOCService.wsdl
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added:
framework/trunk/testsuite/test/resources/jaxws/jbws2593/wsdl/JBWS2593TestRPCService.wsdl
===================================================================
---
framework/trunk/testsuite/test/resources/jaxws/jbws2593/wsdl/JBWS2593TestRPCService.wsdl
(rev 0)
+++
framework/trunk/testsuite/test/resources/jaxws/jbws2593/wsdl/JBWS2593TestRPCService.wsdl 2009-04-03
09:29:52 UTC (rev 9711)
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://jbws2593-rpc.org/"
xmlns:s="http://jbws2593-rpc.org/xsd"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" name="ParameterModeTest"
targetNamespace="http://jbws2593-rpc.org/">
+ <types/>
+ <message name="inSimpleTypesRequest">
+ <part name="varBase64Binary" type="xsd:base64Binary" />
+ <part name="varHexBinary" type="xsd:hexBinary" />
+ </message>
+ <message name="inSimpleTypesResponse">
+ <part name="return" type="xsd:hexBinary" />
+ </message>
+ <portType name="ParameterModeTest">
+ <operation name="echoInSimpleTypes" parameterOrder="varBase64Binary
varHexBinary">
+ <input message="tns:inSimpleTypesRequest" />
+ <output message="tns:inSimpleTypesResponse" />
+ </operation>
+ </portType>
+ <binding name="ParameterModeTestBinding"
type="tns:ParameterModeTest">
+ <soap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http" />
+ <operation name="echoInSimpleTypes">
+ <soap:operation soapAction="" />
+ <input>
+ <soap:body use="literal"
namespace="http://ParameterModeTest.org/" />
+ </input>
+ <output>
+ <soap:body use="literal"
namespace="http://ParameterModeTest.org/" />
+ </output>
+ </operation>
+ </binding>
+ <service name="ParameterModeTestService">
+ <port name="ParameterModeTestPort"
binding="tns:ParameterModeTestBinding">
+ <soap:address
location="http://localhost:8000/W2JRLParameterModeTest/jaxws/ParameterModeTest"
/>
+ </port>
+ </service>
+</definitions>
+
Property changes on:
framework/trunk/testsuite/test/resources/jaxws/jbws2593/wsdl/JBWS2593TestRPCService.wsdl
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF