From c03f88d70143b6998bfbd81052b701082624e22d Mon Sep 17 00:00:00 2001
From: Jan Zickermann <jan.zickermann@dataport.de>
Date: Fri, 27 Sep 2024 12:19:41 +0200
Subject: [PATCH] OZG-6754 KOP-2673 abgabe0401: Add test for Praefix element

---
 .../xdomea/XdomeaXtaMessageCreatorITCase.java      |  7 ++++++-
 .../invalid-Praefix-author.patch                   | 14 ++++++++++++++
 .../invalid-Praefix-reader.patch                   | 13 +++++++++++++
 .../invalid-reference-to-primary-document.patch    |  2 +-
 4 files changed, 34 insertions(+), 2 deletions(-)
 create mode 100644 src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-Praefix-author.patch
 create mode 100644 src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-Praefix-reader.patch

diff --git a/src/test/java/de/ozgcloud/xta/client/xdomea/XdomeaXtaMessageCreatorITCase.java b/src/test/java/de/ozgcloud/xta/client/xdomea/XdomeaXtaMessageCreatorITCase.java
index b508b53..732c1ac 100644
--- a/src/test/java/de/ozgcloud/xta/client/xdomea/XdomeaXtaMessageCreatorITCase.java
+++ b/src/test/java/de/ozgcloud/xta/client/xdomea/XdomeaXtaMessageCreatorITCase.java
@@ -107,7 +107,12 @@ class XdomeaXtaMessageCreatorITCase {
 
 		@DisplayName("should throw client exception for invalid message 0401")
 		@ParameterizedTest
-		@ValueSource(strings = { "invalid-ProzessID.patch", "invalid-reference-to-primary-document.patch" })
+		@ValueSource(strings = {
+				"invalid-ProzessID.patch",
+				"invalid-reference-to-primary-document.patch",
+				"invalid-Praefix-author.patch",
+				"invalid-Praefix-reader.patch",
+		})
 		void shouldThrowClientExceptionForInvalidMessage0401(String patchName) {
 			var invalidMessageZipFile = loadMessageFileWithPatch(
 					"abgabe0401-kleiner-waffenschein",
diff --git a/src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-Praefix-author.patch b/src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-Praefix-author.patch
new file mode 100644
index 0000000..f93f702
--- /dev/null
+++ b/src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-Praefix-author.patch
@@ -0,0 +1,14 @@
+diff --git a/src/test/resources/messages/abgabe0401-kleiner-waffenschein/message/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.zip/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.xml b/src/test/resources/messages/abgabe0401-kleiner-waffenschein/message/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.zip/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.xml
+index c225828..e84f63f 100644
+--- a/src/test/resources/messages/abgabe0401-kleiner-waffenschein/message/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.zip/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.xml
++++ b/src/test/resources/messages/abgabe0401-kleiner-waffenschein/message/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.zip/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.xml
+@@ -11,9 +11,6 @@
+                 <xdomea:Behoerdenschluessel listURI="urn:de:bund:destatis:bevoelkerungsstatistik:schluessel:rs" listVersionID="2024-02-29">
+                     <code>${authorIdentifier.value}</code>
+                 </xdomea:Behoerdenschluessel>
+-                <xdomea:Praefix>
+-                    <code>${authorIdentifier.prefix}:</code>
+-                </xdomea:Praefix>
+             </xdomea:Behoerdenkennung>
+             <xdomea:Organisationseinheit>
+                 <xdomea:Name>9030229</xdomea:Name>
diff --git a/src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-Praefix-reader.patch b/src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-Praefix-reader.patch
new file mode 100644
index 0000000..9732753
--- /dev/null
+++ b/src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-Praefix-reader.patch
@@ -0,0 +1,13 @@
+diff --git a/src/test/resources/messages/abgabe0401-kleiner-waffenschein/message/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.zip/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.xml b/src/test/resources/messages/abgabe0401-kleiner-waffenschein/message/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.zip/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.xml
+index c225828..d7d2c56 100644
+--- a/src/test/resources/messages/abgabe0401-kleiner-waffenschein/message/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.zip/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.xml
++++ b/src/test/resources/messages/abgabe0401-kleiner-waffenschein/message/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.zip/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.xml
+@@ -25,7 +25,7 @@
+                     <code>${readerIdentifier.value}</code>
+                 </xdomea:Behoerdenschluessel>
+                 <xdomea:Praefix>
+-                    <code>${readerIdentifier.prefix}:</code>
++                    <code>${authorIdentifier.prefix}:</code>
+                 </xdomea:Praefix>
+             </xdomea:Behoerdenkennung>
+         </xdomea:Empfaenger>
diff --git a/src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-reference-to-primary-document.patch b/src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-reference-to-primary-document.patch
index 6df712f..dace639 100644
--- a/src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-reference-to-primary-document.patch
+++ b/src/test/resources/messages/abgabe0401-kleiner-waffenschein/invalid-reference-to-primary-document.patch
@@ -2,7 +2,7 @@ diff --git a/src/test/resources/messages/abgabe0401-kleiner-waffenschein/message
 index cac00bf..9103baa 100644
 --- a/src/test/resources/messages/abgabe0401-kleiner-waffenschein/message/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.zip/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.xml
 +++ b/src/test/resources/messages/abgabe0401-kleiner-waffenschein/message/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.zip/84be3140-e069-4d4a-80c7-889b5eec539e_Abgabe.Abgabe.0401.xml
-@@ -158,7 +158,7 @@
+@@ -164,7 +164,7 @@
                              </xdomea:Name>
                              <xdomea:Version></xdomea:Version>
                              <xdomea:Primaerdokument>
-- 
GitLab