From f9d97451bcd6f9833b745af36ff15d06e751e3cf Mon Sep 17 00:00:00 2001 From: Anton Anikin Date: Wed, 11 Oct 2017 17:34:59 +0300 Subject: [PATCH] junit test for StandardXRoadConsumerMessageExtractor, which fixes jroad issue #12 --- ...dardXRoadConsumerMessageExtractorTest.java | 52 ++++++++++++++++++ .../test/resources/extractor/EarestFail1.xml | 6 +++ .../test/resources/extractor/EarestFail2.xml | 54 +++++++++++++++++++ .../test/resources/extractor/EarestFail3.xml | 50 +++++++++++++++++ .../test/resources/extractor/EarestFail4.xml | 1 + .../test/resources/extractor/EarestFail5.xml | 50 +++++++++++++++++ 6 files changed, 213 insertions(+) create mode 100644 client-transport/src/test/java/com/nortal/jroad/client/service/extractor/StandardXRoadConsumerMessageExtractorTest.java create mode 100644 client-transport/src/test/resources/extractor/EarestFail1.xml create mode 100644 client-transport/src/test/resources/extractor/EarestFail2.xml create mode 100644 client-transport/src/test/resources/extractor/EarestFail3.xml create mode 100644 client-transport/src/test/resources/extractor/EarestFail4.xml create mode 100644 client-transport/src/test/resources/extractor/EarestFail5.xml diff --git a/client-transport/src/test/java/com/nortal/jroad/client/service/extractor/StandardXRoadConsumerMessageExtractorTest.java b/client-transport/src/test/java/com/nortal/jroad/client/service/extractor/StandardXRoadConsumerMessageExtractorTest.java new file mode 100644 index 00000000..9ba72f3f --- /dev/null +++ b/client-transport/src/test/java/com/nortal/jroad/client/service/extractor/StandardXRoadConsumerMessageExtractorTest.java @@ -0,0 +1,52 @@ +package com.nortal.jroad.client.service.extractor; + + +import com.nortal.jroad.model.XmlBeansXRoadMetadata; +import org.junit.Test; +import org.springframework.core.io.ClassPathResource; +import org.springframework.ws.soap.saaj.SaajSoapMessage; + +import javax.xml.soap.MessageFactory; +import javax.xml.soap.SOAPException; +import javax.xml.soap.SOAPMessage; +import java.io.IOException; +import java.io.InputStream; + +public class StandardXRoadConsumerMessageExtractorTest { + + + private SOAPMessage getMessageFromString(String filename) throws SOAPException, IOException { + InputStream is = (new ClassPathResource(filename)).getInputStream(); + + return MessageFactory.newInstance().createMessage(null, is); + } + + + @Test + public void testExtractData() throws IOException, SOAPException { + StandardXRoadConsumerMessageExtractor extractor = + new StandardXRoadConsumerMessageExtractor(new XmlBeansXRoadMetadata("operation", + "b", + "request", + "d", + "response", + "f", + "1")); + + + // xml elements in a single row, but base64binary part on different rows + extractor.extractData(new SaajSoapMessage(getMessageFromString("extractor/EarestFail1.xml"))); + + // manually formated file with whitespaces between elements without new row + extractor.extractData(new SaajSoapMessage(getMessageFromString("extractor/EarestFail2.xml"))); + + // menually formated file without whitespaces between elements and without new row + extractor.extractData(new SaajSoapMessage(getMessageFromString("extractor/EarestFail3.xml"))); + + // whole file in a single row + extractor.extractData(new SaajSoapMessage(getMessageFromString("extractor/EarestFail4.xml"))); + + // menually formated file with whitespaces between elements and without new row + extractor.extractData(new SaajSoapMessage(getMessageFromString("extractor/EarestFail5.xml"))); + } +} diff --git a/client-transport/src/test/resources/extractor/EarestFail1.xml b/client-transport/src/test/resources/extractor/EarestFail1.xml new file mode 100644 index 00000000..a6e026e0 --- /dev/null +++ b/client-transport/src/test/resources/extractor/EarestFail1.xml @@ -0,0 +1,6 @@ +7000034915d11af556270000349-14233366054.0ee-devGOV70000349earest-clientee-devGOV70000310earestMulleSaabunudAsjadv12017-10-06T15:51:00A801201702209240jyritammJVBERi0xLjUNCiW1tbW1DQoxIDAgb2JqDQo8PC9UeXBlL0NhdGFsb2cvUGFnZXMgMiAwIFIvTGFu + ZyhldC1FRSkgL1N0cnVjdFRyZWVSb290IDE1IDAgUi9NYXJrSW5mbzw8L01hcmtlZCB0cnVlPj4+ + CjE1MDc2Nw0KJSVFT0YNCnhyZWYNCjAgMA0KdHJhaWxlcg0KPDwvU2l6ZSAyNy9Sb290IDEgMCBS + L0luZm8gMTQgMCBSL0lEWzxBNDQzRkEyNkVCQzM3RTRDODczOUFEQkYxNUEyRTZDRj48QTQ0M0ZB + MjZFQkMzN0U0Qzg3MzlBREJGMTVBMkU2Q0Y+XSAvUHJldiAxNTA3NjcvWFJlZlN0bSAxNTA0NjM+ + Pg0Kc3RhcnR4cmVmDQoxNTE0NjUNCiUlRU9G \ No newline at end of file diff --git a/client-transport/src/test/resources/extractor/EarestFail2.xml b/client-transport/src/test/resources/extractor/EarestFail2.xml new file mode 100644 index 00000000..4d17a055 --- /dev/null +++ b/client-transport/src/test/resources/extractor/EarestFail2.xml @@ -0,0 +1,54 @@ + + + 70000349 + 15d11af556270000349-1423336605 + 4.0 + + ee-dev + GOV + 70000349 + earest-client + + + ee-dev + GOV + 70000310 + earest + MulleSaabunudAsjad + v1 + + + + + + + + + 2017-10-06T15:51:00 + + + + + + + A801201702209240 + + + + jyritamm + JVBERi0xLjUNCiW1tbW1DQoxIDAgb2JqDQo8PC9UeXBlL0NhdGFsb2cvUGFnZXMgMiAwIFIvTGFu + ZyhldC1FRSkgL1N0cnVjdFRyZWVSb290IDE1IDAgUi9NYXJrSW5mbzw8L01hcmtlZCB0cnVlPj4+ + CjE1MDc2Nw0KJSVFT0YNCnhyZWYNCjAgMA0KdHJhaWxlcg0KPDwvU2l6ZSAyNy9Sb290IDEgMCBS + L0luZm8gMTQgMCBSL0lEWzxBNDQzRkEyNkVCQzM3RTRDODczOUFEQkYxNUEyRTZDRj48QTQ0M0ZB + MjZFQkMzN0U0Qzg3MzlBREJGMTVBMkU2Q0Y+XSAvUHJldiAxNTA3NjcvWFJlZlN0bSAxNTA0NjM+ + Pg0Kc3RhcnR4cmVmDQoxNTE0NjUNCiUlRU9G + + + + + + + + + + \ No newline at end of file diff --git a/client-transport/src/test/resources/extractor/EarestFail3.xml b/client-transport/src/test/resources/extractor/EarestFail3.xml new file mode 100644 index 00000000..c95b1c0b --- /dev/null +++ b/client-transport/src/test/resources/extractor/EarestFail3.xml @@ -0,0 +1,50 @@ + + + 70000349 + 15d11af556270000349-1423336605 + 4.0 + + ee-dev + GOV + 70000349 + earest-client + + + ee-dev + GOV + 70000310 + earest + MulleSaabunudAsjad + v1 + + + + + 2017-10-06T15:51:00 + + + + + + + A801201702209240 + + + + jyritamm + JVBERi0xLjUNCiW1tbW1DQoxIDAgb2JqDQo8PC9UeXBlL0NhdGFsb2cvUGFnZXMgMiAwIFIvTGFu + ZyhldC1FRSkgL1N0cnVjdFRyZWVSb290IDE1IDAgUi9NYXJrSW5mbzw8L01hcmtlZCB0cnVlPj4+ + CjE1MDc2Nw0KJSVFT0YNCnhyZWYNCjAgMA0KdHJhaWxlcg0KPDwvU2l6ZSAyNy9Sb290IDEgMCBS + L0luZm8gMTQgMCBSL0lEWzxBNDQzRkEyNkVCQzM3RTRDODczOUFEQkYxNUEyRTZDRj48QTQ0M0ZB + MjZFQkMzN0U0Qzg3MzlBREJGMTVBMkU2Q0Y+XSAvUHJldiAxNTA3NjcvWFJlZlN0bSAxNTA0NjM+ + Pg0Kc3RhcnR4cmVmDQoxNTE0NjUNCiUlRU9G + + + + + + + + + + \ No newline at end of file diff --git a/client-transport/src/test/resources/extractor/EarestFail4.xml b/client-transport/src/test/resources/extractor/EarestFail4.xml new file mode 100644 index 00000000..c2961ffc --- /dev/null +++ b/client-transport/src/test/resources/extractor/EarestFail4.xml @@ -0,0 +1 @@ +7000034915d11af556270000349-14233366054.0ee-devGOV70000349earest-clientee-devGOV70000310earestMulleSaabunudAsjadv12017-10-06T15:51:00A801201702209240jyritammJVBERi0xLjUNCiW1tbW1DQoxIDAgb2JqDQo8PC9UeXBlL0NhdGFsb2cvUGFnZXMgMiAwIFIvTGFuZyhldC1FRSkgL1N0cnVjdFRyZWVSb290IDE1IDAgUi9NYXJrSW5mbzw8L01hcmtlZCB0cnVlPj4+CjE1MDc2Nw0KJSVFT0YNCnhyZWYNCjAgMA0KdHJhaWxlcg0KPDwvU2l6ZSAyNy9Sb290IDEgMCBSL0luZm8gMTQgMCBSL0lEWzxBNDQzRkEyNkVCQzM3RTRDODczOUFEQkYxNUEyRTZDRj48QTQ0M0ZBMjZFQkMzN0U0Qzg3MzlBREJGMTVBMkU2Q0YXSAvUHJldiAxNTA3NjcvWFJlZlN0bSAxNTA0NjM+Pg0Kc3RhcnR4cmVmDQoxNTE0NjUNCiUlRU9G \ No newline at end of file diff --git a/client-transport/src/test/resources/extractor/EarestFail5.xml b/client-transport/src/test/resources/extractor/EarestFail5.xml new file mode 100644 index 00000000..2c649b54 --- /dev/null +++ b/client-transport/src/test/resources/extractor/EarestFail5.xml @@ -0,0 +1,50 @@ + + + 70000349 + 15d11af556270000349-1423336605 + 4.0 + + ee-dev + GOV + 70000349 + earest-client + + + ee-dev + GOV + 70000310 + earest + MulleSaabunudAsjad + v1 + + + + + 2017-10-06T15:51:00 + + + + + + + A801201702209240 + + + + jyritamm + JVBERi0xLjUNCiW1tbW1DQoxIDAgb2JqDQo8PC9UeXBlL0NhdGFsb2cvUGFnZXMgMiAwIFIvTGFu + ZyhldC1FRSkgL1N0cnVjdFRyZWVSb290IDE1IDAgUi9NYXJrSW5mbzw8L01hcmtlZCB0cnVlPj4+ + CjE1MDc2Nw0KJSVFT0YNCnhyZWYNCjAgMA0KdHJhaWxlcg0KPDwvU2l6ZSAyNy9Sb290IDEgMCBS + L0luZm8gMTQgMCBSL0lEWzxBNDQzRkEyNkVCQzM3RTRDODczOUFEQkYxNUEyRTZDRj48QTQ0M0ZB + MjZFQkMzN0U0Qzg3MzlBREJGMTVBMkU2Q0Y+XSAvUHJldiAxNTA3NjcvWFJlZlN0bSAxNTA0NjM+ + Pg0Kc3RhcnR4cmVmDQoxNTE0NjUNCiUlRU9G + + + + + + + + + + \ No newline at end of file