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 0000000000000000000000000000000000000000..82584e36025e9bb53d79b4fecafb35f2a2d480eb --- /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(); + } + } +}