Author: veithen
Date: Mon Jun 23 16:25:28 2014
New Revision: 1604867

URL: http://svn.apache.org/r1604867
Log:
* Update ConvertedTestMessage to convert SOAP 1.2 faults to SOAP 1.1.
* Partially replace the old message.xml test message with a better defined test 
message.

Added:
    
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/resources/test-message/set/simple-fault.xml
   (with props)
Modified:
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/body/TestGetFaultWithParser.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/body/TestHasFaultWithParser.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestDetach.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestGetBodyWithParser.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestHasFaultWithParser.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestHasFaultWithParserOptimized.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetCodeWithParser.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetDetailWithParser.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetReasonWithParser.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/faultcode/TestGetValueAsQNameWithParser.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/header/TestDiscardIncomplete.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap11/faultcode/TestGetValueWithParser.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faultcode/TestGetValueWithParser.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faultreason/TestGetFirstSOAPTextWithParser.java
    
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faulttext/TestGetLangWithParser.java
    
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/ConvertedTestMessage.java
    
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/SOAPElementType.java
    
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/TestMessageSet.java

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/body/TestGetFaultWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/body/TestGetFaultWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/body/TestGetFaultWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/body/TestGetFaultWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -23,6 +23,8 @@ import org.apache.axiom.soap.SOAPBody;
 import org.apache.axiom.soap.SOAPConstants;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestGetFaultWithParser extends SOAPTestCase {
     public TestGetFaultWithParser(OMMetaFactory metaFactory, SOAPSpec spec) {
@@ -30,7 +32,7 @@ public class TestGetFaultWithParser exte
     }
 
     protected void runTest() throws Throwable {
-        SOAPBody body = getTestMessage(MESSAGE).getBody();
+        SOAPBody body = 
TestMessageSet.SIMPLE_FAULT.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory).getBody();
         assertNotNull(
                 "Body Test With parser :- getFault method returns null",
                 body.getFault());

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/body/TestHasFaultWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/body/TestHasFaultWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/body/TestHasFaultWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/body/TestHasFaultWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -22,6 +22,8 @@ import org.apache.axiom.om.OMMetaFactory
 import org.apache.axiom.soap.SOAPBody;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestHasFaultWithParser extends SOAPTestCase {
     public TestHasFaultWithParser(OMMetaFactory metaFactory, SOAPSpec spec) {
@@ -29,7 +31,7 @@ public class TestHasFaultWithParser exte
     }
 
     protected void runTest() throws Throwable {
-        SOAPBody body = getTestMessage(MESSAGE).getBody();
+        SOAPBody body = 
TestMessageSet.SIMPLE_FAULT.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory).getBody();
         assertTrue(
                 "Body Test With parser :- hasFault method returns false",
                 body.hasFault());

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestDetach.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestDetach.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestDetach.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestDetach.java
 Mon Jun 23 16:25:28 2014
@@ -24,6 +24,8 @@ import org.apache.axiom.om.OMNode;
 import org.apache.axiom.soap.SOAPEnvelope;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 /**
  * Tests {@link OMNode#detach()} when used on a {@link SOAPEnvelope}. Older 
Axiom versions threw an
@@ -36,7 +38,7 @@ public class TestDetach extends SOAPTest
     }
 
     protected void runTest() throws Throwable {
-        SOAPEnvelope envelope = getTestMessage(MESSAGE);
+        SOAPEnvelope envelope = 
TestMessageSet.NO_HEADER.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory);
         OMDocument document = (OMDocument)envelope.getParent();
         envelope.detach();
         assertNull(envelope.getParent());

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestGetBodyWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestGetBodyWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestGetBodyWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestGetBodyWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -24,6 +24,8 @@ import org.apache.axiom.soap.SOAPConstan
 import org.apache.axiom.soap.SOAPEnvelope;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestGetBodyWithParser extends SOAPTestCase {
     public TestGetBodyWithParser(OMMetaFactory metaFactory, SOAPSpec spec) {
@@ -31,7 +33,7 @@ public class TestGetBodyWithParser exten
     }
 
     protected void runTest() throws Throwable {
-        SOAPEnvelope envelope = getTestMessage(MESSAGE);
+        SOAPEnvelope envelope = 
TestMessageSet.NO_HEADER.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory);
         SOAPBody body = envelope.getBody();
         assertEquals("Body Test : - Body local name mismatch",
                 SOAPConstants.BODY_LOCAL_NAME, body.getLocalName());

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestHasFaultWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestHasFaultWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestHasFaultWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestHasFaultWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -22,6 +22,8 @@ import org.apache.axiom.om.OMMetaFactory
 import org.apache.axiom.soap.SOAPEnvelope;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestHasFaultWithParser extends SOAPTestCase {
     public TestHasFaultWithParser(OMMetaFactory metaFactory, SOAPSpec spec) {
@@ -29,7 +31,7 @@ public class TestHasFaultWithParser exte
     }
 
     protected void runTest() throws Throwable {
-        SOAPEnvelope env = getTestMessage(MESSAGE);
+        SOAPEnvelope env = 
TestMessageSet.SIMPLE_FAULT.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory);
         assertTrue(env.hasFault());
     }
 }

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestHasFaultWithParserOptimized.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestHasFaultWithParserOptimized.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestHasFaultWithParserOptimized.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/envelope/TestHasFaultWithParserOptimized.java
 Mon Jun 23 16:25:28 2014
@@ -21,7 +21,6 @@ package org.apache.axiom.ts.soap.envelop
 import javax.xml.namespace.QName;
 import javax.xml.stream.XMLStreamReader;
 
-import org.apache.axiom.om.AbstractTestCase;
 import org.apache.axiom.om.OMMetaFactory;
 import org.apache.axiom.om.OMXMLBuilderFactory;
 import org.apache.axiom.om.util.StAXUtils;
@@ -30,6 +29,7 @@ import org.apache.axiom.soap.SOAPEnvelop
 import org.apache.axiom.soap.SOAPModelBuilder;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestHasFaultWithParserOptimized extends SOAPTestCase {
     public TestHasFaultWithParserOptimized(OMMetaFactory metaFactory, SOAPSpec 
spec) {
@@ -42,7 +42,7 @@ public class TestHasFaultWithParserOptim
         // implementation.
         
         XMLStreamReader soap11Parser = StAXUtils.createXMLStreamReader(
-                AbstractTestCase.getTestResource("soap/" + spec.getName() + 
"/" + MESSAGE), null);
+                TestMessageSet.SIMPLE_FAULT.getMessage(spec).getInputStream(), 
null);
         QName qname = new QName(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI, 
SOAP11Constants.BODY_FAULT_LOCAL_NAME, "SOAP-ENV");
         XMLStreamReaderWithQName parser = new 
XMLStreamReaderWithQName(soap11Parser, qname);
         SOAPModelBuilder soap11Builder = 
OMXMLBuilderFactory.createStAXSOAPModelBuilder(metaFactory, parser);

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetCodeWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetCodeWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetCodeWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetCodeWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -22,6 +22,8 @@ import org.apache.axiom.om.OMMetaFactory
 import org.apache.axiom.soap.SOAPFault;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestGetCodeWithParser extends SOAPTestCase {
     public TestGetCodeWithParser(OMMetaFactory metaFactory, SOAPSpec spec) {
@@ -29,7 +31,7 @@ public class TestGetCodeWithParser exten
     }
 
     protected void runTest() throws Throwable {
-        SOAPFault soapFaultWithParser = 
getTestMessage(MESSAGE).getBody().getFault();
+        SOAPFault soapFaultWithParser = 
TestMessageSet.SIMPLE_FAULT.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory).getBody().getFault();
         assertNotNull(
                 "Fault Test with parser: - getCode method returns null",
                 soapFaultWithParser.getCode());

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetDetailWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetDetailWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetDetailWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetDetailWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -22,6 +22,8 @@ import org.apache.axiom.om.OMMetaFactory
 import org.apache.axiom.soap.SOAPFault;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestGetDetailWithParser extends SOAPTestCase {
     public TestGetDetailWithParser(OMMetaFactory metaFactory, SOAPSpec spec) {
@@ -29,7 +31,7 @@ public class TestGetDetailWithParser ext
     }
 
     protected void runTest() throws Throwable {
-        SOAPFault soapFaultWithParser = 
getTestMessage(MESSAGE).getBody().getFault();
+        SOAPFault soapFaultWithParser = 
TestMessageSet.SIMPLE_FAULT.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory).getBody().getFault();
         assertNotNull(
                 "Fault Test with parser: - getDetail method returns null",
                 soapFaultWithParser.getDetail());

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetReasonWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetReasonWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetReasonWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/fault/TestGetReasonWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -22,6 +22,8 @@ import org.apache.axiom.om.OMMetaFactory
 import org.apache.axiom.soap.SOAPFault;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestGetReasonWithParser extends SOAPTestCase {
     public TestGetReasonWithParser(OMMetaFactory metaFactory, SOAPSpec spec) {
@@ -29,7 +31,7 @@ public class TestGetReasonWithParser ext
     }
 
     protected void runTest() throws Throwable {
-        SOAPFault soapFaultWithParser = 
getTestMessage(MESSAGE).getBody().getFault();
+        SOAPFault soapFaultWithParser = 
TestMessageSet.SIMPLE_FAULT.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory).getBody().getFault();
         assertNotNull(
                 "Fault Test with parser: - getReason method returns null",
                 soapFaultWithParser.getReason());

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/faultcode/TestGetValueAsQNameWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/faultcode/TestGetValueAsQNameWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/faultcode/TestGetValueAsQNameWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/faultcode/TestGetValueAsQNameWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -25,6 +25,8 @@ import org.apache.axiom.soap.SOAPFaultCl
 import org.apache.axiom.soap.SOAPFaultCode;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 /**
  * Tests the behavior of {@link SOAPFaultClassifier#getValueAsQName()} on a 
{@link SOAPFaultCode}.
@@ -35,7 +37,7 @@ public class TestGetValueAsQNameWithPars
     }
 
     protected void runTest() throws Throwable {
-        SOAPFaultCode faultCode = 
getTestMessage(MESSAGE).getBody().getFault().getCode();
-        assertEquals(new QName(spec.getEnvelopeNamespaceURI(), "Sender"), 
faultCode.getValueAsQName());
+        SOAPFaultCode faultCode = 
TestMessageSet.SIMPLE_FAULT.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory).getBody().getFault().getCode();
+        assertEquals(new QName(spec.getEnvelopeNamespaceURI(), "Receiver"), 
faultCode.getValueAsQName());
     }
 }

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/header/TestDiscardIncomplete.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/header/TestDiscardIncomplete.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/header/TestDiscardIncomplete.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/header/TestDiscardIncomplete.java
 Mon Jun 23 16:25:28 2014
@@ -22,6 +22,8 @@ import org.apache.axiom.om.OMMetaFactory
 import org.apache.axiom.soap.SOAPEnvelope;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 // Regression test for AXIOM-223 (see r567512)
 public class TestDiscardIncomplete extends SOAPTestCase {
@@ -30,7 +32,7 @@ public class TestDiscardIncomplete exten
     }
 
     protected void runTest() throws Throwable {
-        SOAPEnvelope envelope = getTestMessage(MESSAGE);
+        SOAPEnvelope envelope = 
TestMessageSet.WSA.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory);
         envelope.getHeader().discard();
         envelope.getBody().toStringWithConsume();
     }

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap11/faultcode/TestGetValueWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap11/faultcode/TestGetValueWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap11/faultcode/TestGetValueWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap11/faultcode/TestGetValueWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -22,6 +22,8 @@ import org.apache.axiom.om.OMMetaFactory
 import org.apache.axiom.soap.SOAPFaultCode;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestGetValueWithParser extends SOAPTestCase {
     public TestGetValueWithParser(OMMetaFactory metaFactory) {
@@ -29,7 +31,7 @@ public class TestGetValueWithParser exte
     }
 
     protected void runTest() throws Throwable {
-        SOAPFaultCode code = 
getTestMessage(MESSAGE).getBody().getFault().getCode();
+        SOAPFaultCode code = 
TestMessageSet.SIMPLE_FAULT.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory).getBody().getFault().getCode();
         assertNull(code.getValue());
     }
 }

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faultcode/TestGetValueWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faultcode/TestGetValueWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faultcode/TestGetValueWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faultcode/TestGetValueWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -23,6 +23,8 @@ import org.apache.axiom.soap.SOAP12Const
 import org.apache.axiom.soap.SOAPFaultCode;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestGetValueWithParser extends SOAPTestCase {
     public TestGetValueWithParser(OMMetaFactory metaFactory) {
@@ -30,7 +32,7 @@ public class TestGetValueWithParser exte
     }
 
     protected void runTest() throws Throwable {
-        SOAPFaultCode faultCode = 
getTestMessage(MESSAGE).getBody().getFault().getCode();
+        SOAPFaultCode faultCode = 
TestMessageSet.SIMPLE_FAULT.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory).getBody().getFault().getCode();
         assertNotNull(
                 "SOAP 1.2 Fault Code Test with parser : - getValue method 
returns null",
                 faultCode.getValue());

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faultreason/TestGetFirstSOAPTextWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faultreason/TestGetFirstSOAPTextWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faultreason/TestGetFirstSOAPTextWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faultreason/TestGetFirstSOAPTextWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -22,6 +22,8 @@ import org.apache.axiom.om.OMMetaFactory
 import org.apache.axiom.soap.SOAPFaultReason;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestGetFirstSOAPTextWithParser extends SOAPTestCase {
     public TestGetFirstSOAPTextWithParser(OMMetaFactory metaFactory) {
@@ -29,7 +31,7 @@ public class TestGetFirstSOAPTextWithPar
     }
 
     protected void runTest() throws Throwable {
-        SOAPFaultReason faultReason = 
getTestMessage(MESSAGE).getBody().getFault().getReason();
+        SOAPFaultReason faultReason = 
TestMessageSet.SIMPLE_FAULT.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory).getBody().getFault().getReason();
         assertFalse(
                 "SOAP 1.2 FaultReason Test With Parser : - getFirstSOAPText 
method returns null",
                 faultReason.getFirstSOAPText() == null);

Modified: 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faulttext/TestGetLangWithParser.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faulttext/TestGetLangWithParser.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faulttext/TestGetLangWithParser.java
 (original)
+++ 
webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap12/faulttext/TestGetLangWithParser.java
 Mon Jun 23 16:25:28 2014
@@ -24,6 +24,8 @@ import org.apache.axiom.soap.SOAP12Const
 import org.apache.axiom.soap.SOAPFaultText;
 import org.apache.axiom.ts.soap.SOAPSpec;
 import org.apache.axiom.ts.soap.SOAPTestCase;
+import org.apache.axiom.ts.soap.TestMessageAdapter;
+import org.apache.axiom.ts.soap.TestMessageSet;
 
 public class TestGetLangWithParser extends SOAPTestCase {
     public TestGetLangWithParser(OMMetaFactory metaFactory) {
@@ -31,7 +33,7 @@ public class TestGetLangWithParser exten
     }
 
     protected void runTest() throws Throwable {
-        SOAPFaultText faultText = 
getTestMessage(MESSAGE).getBody().getFault().getReason().getFirstSOAPText();
+        SOAPFaultText faultText = 
TestMessageSet.SIMPLE_FAULT.getMessage(spec).getAdapter(TestMessageAdapter.class).getSOAPEnvelope(metaFactory).getBody().getFault().getReason().getFirstSOAPText();
         assertTrue(
                 "SOAP 1.2 Fault Text Test With Parser : - getLang method 
returns incorrect string",
                 faultText.getLang().equals("en"));

Modified: 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/ConvertedTestMessage.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/ConvertedTestMessage.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/ConvertedTestMessage.java
 (original)
+++ 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/ConvertedTestMessage.java
 Mon Jun 23 16:25:28 2014
@@ -22,6 +22,7 @@ import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.InputStream;
 
+import javax.xml.namespace.QName;
 import javax.xml.parsers.DocumentBuilderFactory;
 import javax.xml.transform.TransformerFactory;
 import javax.xml.transform.dom.DOMSource;
@@ -54,48 +55,73 @@ final class ConvertedTestMessage extends
                 } finally {
                     in.close();
                 }
-                processEnvelope(document.getDocumentElement());
+                processSOAPElement(document.getDocumentElement(), 
SOAPElementType.ENVELOPE);
                 ByteArrayOutputStream baos = new ByteArrayOutputStream();
                 TransformerFactory.newInstance().newTransformer().transform(
                         new DOMSource(document),
                         new StreamResult(baos));
                 content = baos.toByteArray();
             } catch (Exception ex) {
-                throw new Error("Error converting SOAP message");
+                throw new Error("Error converting SOAP message", ex);
             }
         }
         return new ByteArrayInputStream(content);
     }
     
-    private static void processEnvelope(Element envelope) {
-        NodeList children = changeSOAPNamespace(envelope).getChildNodes();
-        for (int i=0; i<children.getLength(); i++) {
-            Node child = children.item(i);
-            if (child.getNodeType() == Node.ELEMENT_NODE) {
-                Element childElement = (Element)child;
-                String localName = childElement.getLocalName();
-                if (localName.equals("Header")) {
-                    processHeader(childElement);
-                } else if (localName.equals("Body")) {
-                    processBody(childElement);
+    private static void processSOAPElement(Element element, SOAPElementType 
type) {
+        QName newName = type.getQName(SOAPSpec.SOAP11);
+        String prefix = element.getPrefix();
+        if (newName.getNamespaceURI().isEmpty()) {
+            prefix = null;
+        }
+        element = (Element)element.getOwnerDocument().renameNode(element, 
newName.getNamespaceURI(),
+                prefix == null ? newName.getLocalPart() : prefix + ":" + 
newName.getLocalPart());
+        if (type == SOAPFaultChild.CODE) {
+            Element value = getChild(element, SOAPFaultChild.VALUE);
+            // TODO: should translate fault code as well
+            element.setTextContent(value.getTextContent());
+        } else if (type == SOAPFaultChild.REASON) {
+            Element text = getChild(element, SOAPFaultChild.TEXT);
+            element.setTextContent(text.getTextContent());
+        } else {
+            SOAPElementType[] childTypes = type.getChildTypes();
+            if (childTypes.length != 0) {
+                NodeList children = element.getChildNodes();
+                for (int i=0; i<children.getLength(); i++) {
+                    Node child = children.item(i);
+                    if (child.getNodeType() == Node.ELEMENT_NODE) {
+                        Element childElement = (Element)child;
+                        for (SOAPElementType childType : childTypes) {
+                            if (hasName(childElement, 
childType.getQName(SOAPSpec.SOAP12))) {
+                                processSOAPElement(childElement, childType);
+                                break;
+                            }
+                        }
+                    }
                 }
             }
         }
     }
     
-    private static void processHeader(Element header) {
-        changeSOAPNamespace(header);
-        // TODO: need to transform mustUnderstand attributes
-    }
-    
-    private static void processBody(Element body) {
-        changeSOAPNamespace(body);
+    private static boolean hasName(Element element, QName name) {
+        String namespaceURI = element.getNamespaceURI();
+        if (namespaceURI == null) {
+            namespaceURI = "";
+        }
+        return namespaceURI.equals(name.getNamespaceURI()) && 
element.getLocalName().equals(name.getLocalPart());
     }
     
-    private static Element changeSOAPNamespace(Element element) {
-        if 
(!SOAPSpec.SOAP12.getEnvelopeNamespaceURI().equals(element.getNamespaceURI())) {
-            throw new Error("Unexpected namespace");
+    private static Element getChild(Element element, SOAPElementType type) {
+        NodeList children = element.getChildNodes();
+        for (int i=0; i<children.getLength(); i++) {
+            Node child = children.item(i);
+            if (child.getNodeType() == Node.ELEMENT_NODE) {
+                Element childElement = (Element)child;
+                if (hasName(childElement, type.getQName(SOAPSpec.SOAP12))) {
+                    return childElement;
+                }
+            }
         }
-        return (Element)element.getOwnerDocument().renameNode(element, 
SOAPSpec.SOAP11.getEnvelopeNamespaceURI(), element.getTagName());
+        return null;
     }
 }

Modified: 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/SOAPElementType.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/SOAPElementType.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/SOAPElementType.java
 (original)
+++ 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/SOAPElementType.java
 Mon Jun 23 16:25:28 2014
@@ -18,6 +18,9 @@
  */
 package org.apache.axiom.ts.soap;
 
+import java.util.ArrayList;
+import java.util.List;
+
 import javax.xml.namespace.QName;
 
 public abstract class SOAPElementType extends Adaptable {
@@ -78,8 +81,32 @@ public abstract class SOAPElementType ex
         SOAPFaultChild.DETAIL,
     };
     
+    static {
+        addRelation(ENVELOPE, HEADER);
+        addRelation(ENVELOPE, BODY);
+        addRelation(BODY, FAULT);
+        addRelation(FAULT, SOAPFaultChild.CODE);
+        addRelation(SOAPFaultChild.CODE, SOAPFaultChild.VALUE);
+        addRelation(SOAPFaultChild.CODE, SOAPFaultChild.SUB_CODE);
+        addRelation(SOAPFaultChild.SUB_CODE, SOAPFaultChild.VALUE);
+        addRelation(SOAPFaultChild.SUB_CODE, SOAPFaultChild.SUB_CODE);
+        addRelation(FAULT, SOAPFaultChild.REASON);
+        addRelation(SOAPFaultChild.REASON, SOAPFaultChild.TEXT);
+        addRelation(FAULT, SOAPFaultChild.NODE);
+        addRelation(FAULT, SOAPFaultChild.ROLE);
+        addRelation(FAULT, SOAPFaultChild.DETAIL);
+    }
+    
+    private final List<SOAPElementType> parentTypes = new 
ArrayList<SOAPElementType>();
+    private final List<SOAPElementType> childTypes = new 
ArrayList<SOAPElementType>();
+    
     SOAPElementType() {}
     
+    private static void addRelation(SOAPElementType parentType, 
SOAPElementType childType) {
+        parentType.childTypes.add(childType);
+        childType.parentTypes.add(parentType);
+    }
+    
     public static SOAPElementType[] getAll() {
         return allTypes.clone();
     }
@@ -93,4 +120,12 @@ public abstract class SOAPElementType ex
      *         SOAP version
      */
     public abstract QName getQName(SOAPSpec spec);
+    
+    public SOAPElementType[] getParentTypes() {
+        return parentTypes.toArray(new SOAPElementType[parentTypes.size()]);
+    }
+    
+    public SOAPElementType[] getChildTypes() {
+        return childTypes.toArray(new SOAPElementType[childTypes.size()]);
+    }
 }

Modified: 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/TestMessageSet.java
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/TestMessageSet.java?rev=1604867&r1=1604866&r2=1604867&view=diff
==============================================================================
--- 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/TestMessageSet.java
 (original)
+++ 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/java/org/apache/axiom/ts/soap/TestMessageSet.java
 Mon Jun 23 16:25:28 2014
@@ -37,6 +37,12 @@ public final class TestMessageSet extend
      */
     public static final TestMessageSet COMMENT_IN_PROLOG = new 
TestMessageSet("comment-in-prolog");
     
+    /**
+     * A SOAP response with a simple SOAP fault containing a fault code 
(without subcode), reason
+     * (English only) and detail.
+     */
+    public static final TestMessageSet SIMPLE_FAULT = new 
TestMessageSet("simple-fault");
+    
     private final TestMessage soap11Message;
     private final TestMessage soap12Message;
     

Added: 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/resources/test-message/set/simple-fault.xml
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/testsuites/soap-testsuite/src/main/resources/test-message/set/simple-fault.xml?rev=1604867&view=auto
==============================================================================
--- 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/resources/test-message/set/simple-fault.xml
 (added)
+++ 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/resources/test-message/set/simple-fault.xml
 Mon Jun 23 16:25:28 2014
@@ -0,0 +1,16 @@
+<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope";>
+    <s:Body>
+        <s:Fault>
+            <s:Code>
+                <s:Value>s:Receiver</s:Value>
+            </s:Code>
+            <s:Reason>
+                <s:Text xml:lang="en">Request execution failure caused by 
system error</s:Text>
+            </s:Reason>
+            <s:Detail>
+                <p:ErrorCode 
xmlns:p="http://example.org/system";>TYG9034E</p:ErrorCode>
+                <p:Message xmlns:p="http://example.org/system";>CPU quota 
exceeded</p:Message>
+            </s:Detail>
+        </s:Fault>
+    </s:Body>
+</s:Envelope>

Propchange: 
webservices/axiom/trunk/testsuites/soap-testsuite/src/main/resources/test-message/set/simple-fault.xml
------------------------------------------------------------------------------
    svn:eol-style = native


Reply via email to