From fa83a4dc489136addb3c6964734621e82ad7d419 Mon Sep 17 00:00:00 2001
From: "Zickermann, Jan" <jan.zickermann@dataport.de>
Date: Wed, 3 Jul 2024 17:12:03 +0200
Subject: [PATCH] OZG-5776 fim: Add handler test

---
 .../eingang/fim/FimXtaMessageHandlerTest.java | 81 +++++++++++++++++++
 1 file changed, 81 insertions(+)
 create mode 100644 xta-adapter/src/test/java/de/ozgcloud/eingang/fim/FimXtaMessageHandlerTest.java

diff --git a/xta-adapter/src/test/java/de/ozgcloud/eingang/fim/FimXtaMessageHandlerTest.java b/xta-adapter/src/test/java/de/ozgcloud/eingang/fim/FimXtaMessageHandlerTest.java
new file mode 100644
index 000000000..82584e360
--- /dev/null
+++ b/xta-adapter/src/test/java/de/ozgcloud/eingang/fim/FimXtaMessageHandlerTest.java
@@ -0,0 +1,81 @@
+package de.ozgcloud.eingang.fim;
+
+import static org.assertj.core.api.Assertions.*;
+import static org.mockito.Mockito.*;
+
+import java.util.List;
+
+import org.junit.jupiter.api.DisplayName;
+import org.junit.jupiter.api.Nested;
+import org.junit.jupiter.api.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Spy;
+
+import de.ozgcloud.eingang.common.formdata.FormData;
+import de.ozgcloud.eingang.common.formdata.IncomingFile;
+import de.ozgcloud.eingang.common.vorgang.VorgangNummerSupplier;
+import de.ozgcloud.eingang.xta.XtaMessageMetaData;
+
+class FimXtaMessageHandlerTest {
+
+	@Spy
+	@InjectMocks
+	private FimXtaMessageHandler handler;
+
+	@Mock
+	private FimMessageMapper fimMessageMapper;
+
+	@Mock
+	private VorgangNummerSupplier vorgangNummerSupplier;
+
+	@Mock
+	private XtaMessageMetaData xtaMessageMetaData;
+
+	@DisplayName("get form data")
+	@Nested
+	class TestGetFormData {
+
+		@Mock
+		private List<IncomingFile> incomingFiles;
+
+
+		@Mock
+		private FormData formData;
+
+		@DisplayName("should return form data")
+		@Test
+		void shouldReturnFormData() {
+			when(fimMessageMapper.toFormData(xtaMessageMetaData, vorgangNummerSupplier, incomingFiles)).thenReturn(formData);
+
+			var result = handler.getFormData(xtaMessageMetaData, incomingFiles);
+
+			assertThat(result).isEqualTo(formData);
+		}
+	}
+
+	@DisplayName("is responsible")
+	@Nested
+	class TestIsResponsible {
+
+		@DisplayName("should return true")
+		@Test
+		void shouldReturnTrue() {
+			when(xtaMessageMetaData.getMessageType()).thenReturn("fim.123");
+
+			var result = handler.isResponsible(xtaMessageMetaData);
+
+			assertThat(result).isTrue();
+		}
+
+		@DisplayName("should return false")
+		@Test
+		void shouldReturnFalse() {
+			when(xtaMessageMetaData.getMessageType()).thenReturn("xdomea.123");
+
+			var result = handler.isResponsible(xtaMessageMetaData);
+
+			assertThat(result).isFalse();
+		}
+	}
+}
-- 
GitLab