Return-Path: X-Original-To: apmail-cxf-commits-archive@www.apache.org Delivered-To: apmail-cxf-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A750A11641 for ; Wed, 2 Apr 2014 06:27:03 +0000 (UTC) Received: (qmail 3147 invoked by uid 500); 2 Apr 2014 06:26:40 -0000 Delivered-To: apmail-cxf-commits-archive@cxf.apache.org Received: (qmail 2113 invoked by uid 500); 2 Apr 2014 06:26:09 -0000 Mailing-List: contact commits-help@cxf.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cxf.apache.org Delivered-To: mailing list commits@cxf.apache.org Received: (qmail 1832 invoked by uid 99); 2 Apr 2014 06:26:01 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Apr 2014 06:26:01 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id A4F0C925884; Wed, 2 Apr 2014 06:26:00 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: dkulp@apache.org To: commits@cxf.apache.org Date: Wed, 02 Apr 2014 06:26:09 -0000 Message-Id: <3b40c16fa97b48b8ae90612641ccb21a@git.apache.org> In-Reply-To: <23d8af09f3434827801be041543dc389@git.apache.org> References: <23d8af09f3434827801be041543dc389@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [13/21] git commit: Update the ws-specs tests to use xpaths instead of direct string compares when possible. Update the ws-specs tests to use xpaths instead of direct string compares when possible. Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/df01f6c2 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/df01f6c2 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/df01f6c2 Branch: refs/heads/2.7.x-fixes Commit: df01f6c2cf2efedb92cea174fe391a0474874011 Parents: 0283571 Author: Daniel Kulp Authored: Fri Mar 28 12:12:34 2014 -0400 Committer: Daniel Kulp Committed: Wed Apr 2 02:16:24 2014 -0400 ---------------------------------------------------------------------- .../cxf/systest/ws/AbstractWSATestBase.java | 34 ++++++++++++++++++++ .../systest/ws/addr_disable/WSADisableTest.java | 5 ++- .../ws/addr_feature/WSAClientServerTest.java | 25 ++++++-------- .../ws/addr_fromjava/WSAFromJavaTest.java | 3 +- .../systest/ws/addr_wsdl/WSAPureWsdlTest.java | 33 +++++++------------ 5 files changed, 58 insertions(+), 42 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cxf/blob/df01f6c2/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/AbstractWSATestBase.java ---------------------------------------------------------------------- diff --git a/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/AbstractWSATestBase.java b/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/AbstractWSATestBase.java index 400647d..7d2fbed 100644 --- a/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/AbstractWSATestBase.java +++ b/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/AbstractWSATestBase.java @@ -21,9 +21,18 @@ package org.apache.cxf.systest.ws; import java.io.ByteArrayOutputStream; import java.io.PrintWriter; +import java.io.StringReader; +import java.util.HashMap; +import java.util.Map; +import javax.xml.stream.XMLStreamException; + +import org.w3c.dom.Document; + +import org.apache.cxf.helpers.XPathUtils; import org.apache.cxf.interceptor.LoggingInInterceptor; import org.apache.cxf.interceptor.LoggingOutInterceptor; +import org.apache.cxf.staxutils.StaxUtils; import org.apache.cxf.testutil.common.AbstractBusClientServerTestBase; public class AbstractWSATestBase extends AbstractBusClientServerTestBase { @@ -45,4 +54,29 @@ public class AbstractWSATestBase extends AbstractBusClientServerTestBase { return bos; } + + + protected String getLogValue(String log, String xpath) throws XMLStreamException { + String s = log.substring(log.indexOf("Payload: ") + 9); + Document doc = StaxUtils.read(new StringReader(s)); + + Map ns = new HashMap(); + ns.put("wsa", "http://www.w3.org/2005/08/addressing"); + ns.put("soap", "http://schemas.xmlsoap.org/soap/envelope/"); + XPathUtils xpathu = new XPathUtils(ns); + return xpathu.getValueString(xpath, doc.getDocumentElement()); + } + protected void assertLogNotContains(String log, String xpath) throws XMLStreamException { + String s = log.substring(log.indexOf("Payload: ") + 9); + Document doc = StaxUtils.read(new StringReader(s)); + + Map ns = new HashMap(); + ns.put("wsa", "http://www.w3.org/2005/08/addressing"); + ns.put("soap", "http://schemas.xmlsoap.org/soap/envelope/"); + XPathUtils xpathu = new XPathUtils(ns); + assertNull(xpathu.getValueNode(xpath, doc.getDocumentElement())); + } + protected void assertLogContains(String log, String xpath, String value) throws XMLStreamException { + assertEquals(value, getLogValue(log, xpath)); + } } http://git-wip-us.apache.org/repos/asf/cxf/blob/df01f6c2/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_disable/WSADisableTest.java ---------------------------------------------------------------------- diff --git a/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_disable/WSADisableTest.java b/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_disable/WSADisableTest.java index 4424230..6aab05b 100644 --- a/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_disable/WSADisableTest.java +++ b/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_disable/WSADisableTest.java @@ -68,11 +68,10 @@ public class WSADisableTest extends AbstractWSATestBase { assertEquals(3, port.addNumbers(1, 2)); - String base = "http://apache.org/cxf/systest/ws/addr_feature/AddNumbersPortType/"; - String expectedOut = base + "addNumbersRequest"; + String expectedOut = "http://apache.org/cxf/systest/ws/addr_feature/AddNumbersPortType/addNumbersRequest"; String expectedIn = "http://www.w3.org/2005/08/addressing"; - assertTrue(output.toString().indexOf(expectedOut) != -1); + assertLogContains(output.toString(), "//wsa:Action", expectedOut); assertTrue(input.toString().indexOf(expectedIn) == -1); } http://git-wip-us.apache.org/repos/asf/cxf/blob/df01f6c2/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_feature/WSAClientServerTest.java ---------------------------------------------------------------------- diff --git a/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_feature/WSAClientServerTest.java b/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_feature/WSAClientServerTest.java index 49f848f..8ad0764 100644 --- a/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_feature/WSAClientServerTest.java +++ b/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_feature/WSAClientServerTest.java @@ -69,11 +69,8 @@ public class WSAClientServerTest extends AbstractWSATestBase { assertEquals(3, port.addNumbers(1, 2)); - String expectedOut = "
http://www.w3.org/2005/08/addressing/anonymous
"; - String expectedIn = ""; - - assertTrue(output.toString().indexOf(expectedOut) == -1); - assertTrue(input.toString().indexOf(expectedIn) == -1); + assertLogNotContains(output.toString(), "//wsa:Address"); + assertLogNotContains(input.toString(), "//wsa:RelatesTo"); } @Test @@ -88,12 +85,10 @@ public class WSAClientServerTest extends AbstractWSATestBase { AddNumbersPortType port = (AddNumbersPortType) factory.create(); ((BindingProvider)port).getRequestContext().put("ws-addressing.write.optional.replyto", Boolean.TRUE); assertEquals(3, port.addNumbers(1, 2)); - - String expectedOut = "
http://www.w3.org/2005/08/addressing/anonymous
"; - String expectedIn = ""; - - assertTrue(output.toString().indexOf(expectedOut) != -1); - assertTrue(input.toString().indexOf(expectedIn) != -1); + + assertLogContains(output.toString(), "//wsa:Address", "http://www.w3.org/2005/08/addressing/anonymous"); + assertLogContains(input.toString(), "//wsa:RelatesTo", + getLogValue(output.toString(), "//wsa:MessageID")); } @Test @@ -106,11 +101,9 @@ public class WSAClientServerTest extends AbstractWSATestBase { assertEquals(3, port.addNumbers(1, 2)); - String expectedOut = "
http://www.w3.org/2005/08/addressing/anonymous
"; - String expectedIn = ""; - - assertTrue(output.toString().indexOf(expectedOut) != -1); - assertTrue(input.toString().indexOf(expectedIn) != -1); + assertLogContains(output.toString(), "//wsa:Address", "http://www.w3.org/2005/08/addressing/anonymous"); + assertLogContains(input.toString(), "//wsa:RelatesTo", + getLogValue(output.toString(), "//wsa:MessageID")); } //CXF-3456 http://git-wip-us.apache.org/repos/asf/cxf/blob/df01f6c2/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_fromjava/WSAFromJavaTest.java ---------------------------------------------------------------------- diff --git a/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_fromjava/WSAFromJavaTest.java b/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_fromjava/WSAFromJavaTest.java index cfe66d4..ebde8e6 100644 --- a/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_fromjava/WSAFromJavaTest.java +++ b/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_fromjava/WSAFromJavaTest.java @@ -151,8 +151,7 @@ public class WSAFromJavaTest extends AbstractWSATestBase { } catch (SOAPFaultException ex) { //expected } - String expectedOut = "cxf"; - assertTrue(output.toString().indexOf(expectedOut) != -1); + assertLogContains(output.toString(), "//wsa:Action", "cxf"); assertTrue(output.toString().indexOf("SOAPAction=[\"cxf\"]") != -1); } http://git-wip-us.apache.org/repos/asf/cxf/blob/df01f6c2/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_wsdl/WSAPureWsdlTest.java ---------------------------------------------------------------------- diff --git a/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_wsdl/WSAPureWsdlTest.java b/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_wsdl/WSAPureWsdlTest.java index 7d9b8ee..51e333b 100644 --- a/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_wsdl/WSAPureWsdlTest.java +++ b/systests/ws-specs/src/test/java/org/apache/cxf/systest/ws/addr_wsdl/WSAPureWsdlTest.java @@ -80,13 +80,10 @@ public class WSAPureWsdlTest extends AbstractWSATestBase { assertEquals(3, port.addNumbers(1, 2)); String base = "http://apache.org/cxf/systest/ws/addr_feature/AddNumbersPortType/"; - String expectedOut = base + "addNumbersRequest"; - String expectedIn = base + "addNumbersResponse"; - assertTrue(output.toString().indexOf(expectedOut) != -1); - assertTrue(input.toString().indexOf(expectedIn) != -1); - - + assertLogContains(output.toString(), "//wsa:Action", base + "addNumbersRequest"); + assertLogContains(input.toString(), "//wsa:Action", base + "addNumbersResponse"); + resp = port.addNumbers3Async(1, 2); assertEquals(3, resp.get().getReturn()); @@ -108,8 +105,6 @@ public class WSAPureWsdlTest extends AbstractWSATestBase { @Test public void testProviderEndpoint() throws Exception { String base = "http://apache.org/cxf/systest/ws/addr_feature/AddNumbersPortType/"; - String expectedOut = base + "addNumbersRequest"; - String expectedIn = base + "addNumbersResponse"; ByteArrayOutputStream input = setupInLogging(); ByteArrayOutputStream output = setupOutLogging(); @@ -120,8 +115,8 @@ public class WSAPureWsdlTest extends AbstractWSATestBase { assertEquals(3, port.addNumbers(1, 2)); - assertTrue(output.toString().indexOf(expectedOut) != -1); - assertTrue(input.toString().indexOf(expectedIn) != -1); + assertLogContains(output.toString(), "//wsa:Action", base + "addNumbersRequest"); + assertLogContains(input.toString(), "//wsa:Action", base + "addNumbersResponse"); output.reset(); input.reset(); @@ -130,8 +125,8 @@ public class WSAPureWsdlTest extends AbstractWSATestBase { "http://localhost:" + PORT + "/jaxws/add-providernows"); assertEquals(3, port.addNumbers(1, 2)); - assertTrue(output.toString().indexOf(expectedOut) != -1); - assertTrue(input.toString().indexOf(expectedIn) != -1); + assertLogContains(output.toString(), "//wsa:Action", base + "addNumbersRequest"); + assertLogContains(input.toString(), "//wsa:Action", base + "addNumbersResponse"); } @Test @@ -139,9 +134,6 @@ public class WSAPureWsdlTest extends AbstractWSATestBase { String req = "" + "12"; String base = "http://apache.org/cxf/systest/ws/addr_feature/AddNumbersPortType/"; - String expectedOut = base + "addNumbersRequest"; - String expectedIn = base + "addNumbersResponse"; - ByteArrayOutputStream input = setupInLogging(); ByteArrayOutputStream output = setupOutLogging(); @@ -159,8 +151,9 @@ public class WSAPureWsdlTest extends AbstractWSATestBase { disp.invoke(new StreamSource(new StringReader(req))); - assertTrue(output.toString().indexOf(expectedOut) != -1); - assertTrue(input.toString().indexOf(expectedIn) != -1); + + assertLogContains(output.toString(), "//wsa:Action", base + "addNumbersRequest"); + assertLogContains(input.toString(), "//wsa:Action", base + "addNumbersResponse"); output.reset(); @@ -179,10 +172,8 @@ public class WSAPureWsdlTest extends AbstractWSATestBase { disp.invoke(new StreamSource(new StringReader(req))); - assertTrue(output.toString().indexOf(expectedOut) != -1); - assertTrue(input.toString().indexOf(expectedIn) != -1); - - + assertLogContains(output.toString(), "//wsa:Action", base + "addNumbersRequest"); + assertLogContains(input.toString(), "//wsa:Action", base + "addNumbersResponse"); } @Test