Skip to content

Commit 049b86d

Browse files
committed
SWS-993 Use 'similar' assertions when namespace not critical
1 parent 33fcac0 commit 049b86d

File tree

2 files changed

+21
-9
lines changed

2 files changed

+21
-9
lines changed

spring-ws-core/src/test/java/org/springframework/ws/soap/addressing/AbstractWsAddressingTestCase.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,14 @@
2323
import javax.xml.soap.SOAPConstants;
2424
import javax.xml.soap.SOAPException;
2525

26-
import org.springframework.ws.soap.saaj.SaajSoapMessage;
27-
2826
import org.custommonkey.xmlunit.XMLUnit;
2927
import org.junit.Before;
3028
import org.w3c.dom.Document;
3129

32-
import static org.junit.Assert.assertNotNull;
30+
import org.springframework.ws.soap.saaj.SaajSoapMessage;
31+
32+
import static org.custommonkey.xmlunit.XMLUnit.compareXML;
33+
import static org.junit.Assert.*;
3334

3435
public abstract class AbstractWsAddressingTestCase {
3536

@@ -60,4 +61,10 @@ protected void assertXMLEqual(String message, SaajSoapMessage expected, SaajSoap
6061
Document resultDocument = result.getSaajMessage().getSOAPPart();
6162
org.custommonkey.xmlunit.XMLAssert.assertXMLEqual(message, expectedDocument, resultDocument);
6263
}
64+
65+
protected void assertXMLSimilar(String message, SaajSoapMessage expected, SaajSoapMessage result) {
66+
Document expectedDocument = expected.getSaajMessage().getSOAPPart();
67+
Document resultDocument = result.getSaajMessage().getSOAPPart();
68+
org.custommonkey.xmlunit.XMLAssert.assertXMLEqual(compareXML(expectedDocument, resultDocument), false);
69+
}
6370
}

spring-ws-core/src/test/java/org/springframework/ws/soap/addressing/client/AbstractActionCallbackTestCase.java

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,18 @@
1717
package org.springframework.ws.soap.addressing.client;
1818

1919
import java.net.URI;
20+
import java.util.Iterator;
2021
import javax.xml.namespace.QName;
2122
import javax.xml.soap.SOAPBody;
2223
import javax.xml.soap.SOAPBodyElement;
2324
import javax.xml.soap.SOAPElement;
2425
import javax.xml.soap.SOAPException;
2526
import javax.xml.soap.SOAPMessage;
2627

28+
import org.junit.After;
29+
import org.junit.Before;
30+
import org.junit.Test;
31+
2732
import org.springframework.ws.soap.addressing.AbstractWsAddressingTestCase;
2833
import org.springframework.ws.soap.addressing.core.EndpointReference;
2934
import org.springframework.ws.soap.addressing.messageid.MessageIdStrategy;
@@ -34,10 +39,6 @@
3439
import org.springframework.ws.transport.context.TransportContext;
3540
import org.springframework.ws.transport.context.TransportContextHolder;
3641

37-
import org.junit.After;
38-
import org.junit.Before;
39-
import org.junit.Test;
40-
4142
import static org.easymock.EasyMock.*;
4243

4344
public abstract class AbstractActionCallbackTestCase extends AbstractWsAddressingTestCase {
@@ -78,7 +79,8 @@ public void testValid() throws Exception {
7879
callback.doWithMessage(message);
7980

8081
SaajSoapMessage expected = loadSaajMessage(getTestPath() + "/valid.xml");
81-
assertXMLEqual("Invalid message", expected, message);
82+
// assertXMLEqual("Invalid message", expected, message);
83+
assertXMLSimilar("Invalid message", expected, message);
8284

8385
verify(strategyMock, connectionMock);
8486
}
@@ -100,13 +102,16 @@ public void testDefaults() throws Exception {
100102
callback.doWithMessage(message);
101103

102104
SaajSoapMessage expected = loadSaajMessage(getTestPath() + "/valid.xml");
103-
assertXMLEqual("Invalid message", expected, message);
105+
assertXMLSimilar("Invalid message", expected, message);
104106
verify(strategyMock, connectionMock);
105107
}
106108

107109
private SaajSoapMessage createDeleteMessage() throws SOAPException {
108110
SOAPMessage saajMessage = messageFactory.createMessage();
109111
SOAPBody saajBody = saajMessage.getSOAPBody();
112+
for (Iterator<?> iterator = saajBody.getNamespacePrefixes(); iterator.hasNext(); ) {
113+
System.out.println(iterator.next());
114+
}
110115
SOAPBodyElement delete = saajBody.addBodyElement(new QName("http://example.com/fabrikam", "Delete"));
111116
SOAPElement maxCount = delete.addChildElement(new QName("maxCount"));
112117
maxCount.setTextContent("42");

0 commit comments

Comments
 (0)