aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/at/gv/egiz/moazs/SOAPUtilsTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/at/gv/egiz/moazs/SOAPUtilsTest.java')
-rw-r--r--src/test/java/at/gv/egiz/moazs/SOAPUtilsTest.java63
1 files changed, 63 insertions, 0 deletions
diff --git a/src/test/java/at/gv/egiz/moazs/SOAPUtilsTest.java b/src/test/java/at/gv/egiz/moazs/SOAPUtilsTest.java
new file mode 100644
index 0000000..31aa197
--- /dev/null
+++ b/src/test/java/at/gv/egiz/moazs/SOAPUtilsTest.java
@@ -0,0 +1,63 @@
+package at.gv.egiz.moazs;
+
+import at.gv.egiz.moazs.scheme.SOAPUtils;
+import org.junit.Before;
+import org.junit.Test;
+import org.w3c.dom.Element;
+import org.xml.sax.SAXException;
+
+import javax.xml.parsers.ParserConfigurationException;
+import java.io.IOException;
+import java.nio.charset.StandardCharsets;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+public class SOAPUtilsTest {
+
+ SOAPUtils utils;
+
+ private static final String SOAP_MESSAGE =
+ "<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\"><soap:Body>" +
+ "<DeliveryResponse xmlns=\"http://reference.e-government.gv.at/namespace/zustellung/msg/phas" +
+ "e2/20181206#\" xmlns:ns2=\"http://reference.e-government.gv.at/namespace/persondata/phase2/" +
+ "20181206#\" xmlns:ns3=\"http://www.w3.org/2000/09/xmldsig#\"><PartialSuccess><DeliverySyste" +
+ "m>https://testzustellsystem.egiz.gv.at</DeliverySystem><ZSDeliveryID>zs-valid-delivery-requ" +
+ "est-id</ZSDeliveryID><AppDeliveryID>valid-delivery-request-id</AppDeliveryID><GZ>12345</GZ>" +
+ "</PartialSuccess></DeliveryResponse></soap:Body></soap:Envelope>";
+
+ @Before
+ public void setup() {
+ utils = new SOAPUtils();
+ }
+
+ @Test
+ public void toDom() throws ParserConfigurationException, SAXException, IOException {
+ byte[] bytes = SOAP_MESSAGE.getBytes(StandardCharsets.UTF_8);
+
+ Element root = utils.toDOM(bytes);
+
+ assertThat(root.getTagName()).isEqualTo("soap:Envelope");
+ }
+
+ @Test
+ public void unwrapSoapEnvelope() throws ParserConfigurationException, SAXException, IOException {
+ byte[] bytes = SOAP_MESSAGE.getBytes(StandardCharsets.UTF_8);
+ Element soapRoot = utils.toDOM(bytes);
+
+ byte[] unwrappedMessage = utils.unwrapSoapEnvelope(soapRoot);
+
+ Element deliveryResponseRoot = utils.toDOM(unwrappedMessage);
+ assertThat(deliveryResponseRoot.getTagName()).isEqualTo("DeliveryResponse");
+ }
+
+ @Test
+ public void getAppDeliveryID() throws ParserConfigurationException, SAXException, IOException {
+ byte[] bytes = SOAP_MESSAGE.getBytes(StandardCharsets.UTF_8);
+ Element soapRoot = utils.toDOM(bytes);
+
+ String appDeliveryID = utils.getAppDeliveryIDFrom(soapRoot);
+
+ assertThat(appDeliveryID).isEqualTo("valid-delivery-request-id");
+ }
+
+}