diff --git a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/IntelliFormRepresentationAdapter.java b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/IntelliFormRepresentationAdapter.java index 01ee10881a6ae720f90e75929fc493a52d973c33..305af2ec9700d1ab19838240dc2f5d054d24753c 100644 --- a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/IntelliFormRepresentationAdapter.java +++ b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/IntelliFormRepresentationAdapter.java @@ -95,8 +95,6 @@ public class IntelliFormRepresentationAdapter { .orElseThrow(() -> new TechnicalException("Expect to find IntelliForm XML representation!")); return formData.toBuilder() - .representations(formData.getRepresentations()) - .attachments(formData.getAttachments()) .formData(Stream.concat( getFormDataEntriesFromDocument(document, formData.getAttachments()), Map.of( diff --git a/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmZustaendigeStelleMapperTest.java b/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmZustaendigeStelleMapperTest.java index 578c91e31efe2264e481d6f96810f2069b1b256d..3e457b510080a291837a9b9b140444b04466d0bd 100644 --- a/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmZustaendigeStelleMapperTest.java +++ b/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmZustaendigeStelleMapperTest.java @@ -158,7 +158,7 @@ class AfmZustaendigeStelleMapperTest { @Test void shouldGetIdFromMetaData() { FormMetaData metaData = FormMetaDataTestFactory - .create(Map.of("CUSTOMPARAMETER_ORGANISATIONEINHEITENID", AfmZustaendigeStelleTestFactory.ORGANISATIONSEINHEITEN_ID)); + .create(Map.of("CUSTOMPARAMETER_ORGANISATIONSEINHEITENID", AfmZustaendigeStelleTestFactory.ORGANISATIONSEINHEITEN_ID)); var formData = FormDataTestFactory.createBuilder().formData(Collections.emptyMap()) .control(FormDataControl.builder().metaData(Optional.of(metaData)).build()) .build(); diff --git a/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/IntelliFormRepresentationAdapterTest.java b/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/IntelliFormRepresentationAdapterTest.java index 27be6b86a22cc6658bb7421265e3b914fb990817..a7e528c4d2f7a4eb32ab53bed424cefb3b8a6ac9 100644 --- a/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/IntelliFormRepresentationAdapterTest.java +++ b/semantik-adapter/src/test/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/IntelliFormRepresentationAdapterTest.java @@ -3,6 +3,7 @@ package de.ozgcloud.eingang.semantik.enginebased.afm.intelliform; import static de.ozgcloud.eingang.semantik.enginebased.afm.intelliform.IntelliFormRepresentationAdapter.*; import static org.assertj.core.api.Assertions.*; import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.io.IOException; @@ -36,6 +37,7 @@ import com.thedeanda.lorem.LoremIpsum; import de.ozgcloud.eingang.common.errorhandling.TechnicalException; import de.ozgcloud.eingang.common.formdata.FormData; +import de.ozgcloud.eingang.common.formdata.FormDataTestFactory; import de.ozgcloud.eingang.common.formdata.IncomingFile; import de.ozgcloud.eingang.common.formdata.IncomingFileGroup; import de.ozgcloud.eingang.common.formdata.IncomingFileGroupTestFactory; @@ -48,7 +50,7 @@ class IntelliFormRepresentationAdapterTest { @Spy @InjectMocks - IntelliFormRepresentationAdapter adapter; + private IntelliFormRepresentationAdapter adapter; @Mock private XmlToJavaMapsMapper xmlToJavaMapsMapper; @@ -68,8 +70,8 @@ class IntelliFormRepresentationAdapterTest { "<root xmlns:t=\"unknown\">first</root>", "<root>second</root>", "<root xmlns:t=\"%s\">third</root>".formatted(INTELLIFORM_TYPENAME), - "<root xmlns:t=\"%s\">fourth</root>".formatted(INTELLIFORM_TYPENAME) - ).map(IntelliFormRepresentationAdapterTest.this::buildXMLDocument); + "<root xmlns:t=\"%s\">fourth</root>".formatted(INTELLIFORM_TYPENAME)) + .map(IntelliFormRepresentationAdapterTest.this::buildXMLDocument); doReturn(schemas).when(adapter).streamXMLDocumentsFromRepresentations(formData); var firstWithSchema = adapter.findIntelliFormXMLRepresentation(formData); @@ -182,7 +184,7 @@ class IntelliFormRepresentationAdapterTest { doReturn(Optional.of(buildXMLDocument(""" <myForm xmlns:t="%s"> </myForm>""".formatted(INTELLIFORM_TYPENAME)))) - .when(adapter).findIntelliFormXMLRepresentation(formData); + .when(adapter).findIntelliFormXMLRepresentation(any()); var isResponsible = adapter.isResponsible(formData); @@ -192,8 +194,7 @@ class IntelliFormRepresentationAdapterTest { @DisplayName("should be false without xml document") @Test void shouldBeFalseWithoutXmlDocument() { - doReturn(Optional.empty()) - .when(adapter).findIntelliFormXMLRepresentation(formData); + doReturn(Optional.empty()).when(adapter).findIntelliFormXMLRepresentation(any()); var isResponsible = adapter.isResponsible(formData); @@ -219,19 +220,14 @@ class IntelliFormRepresentationAdapterTest { when(xmlToJavaMapsMapper.mapXmlToJavaMaps(document)).thenReturn(Map.of( DOCUMENT_TEST_KEY, DOCUMENT_TEST_VALUE, "Upload1", Map.of( - "file", Map.of("id", IncomingFileGroupTestFactory.VENDOR_ID_XXX) - ), + "file", Map.of("id", IncomingFileGroupTestFactory.VENDOR_ID_XXX)), "Upload2", Map.of( - "file", Map.of("id", OTHER_VENDOR_ID) - ), + "file", Map.of("id", OTHER_VENDOR_ID)), "Upload3", Map.of( - "file", Map.of("id", "representationId") - ), + "file", Map.of("id", "representationId")), "NoUpload1", Map.of( - "file", "" - ), - "NoUpload2", Map.of() - )); + "file", ""), + "NoUpload2", Map.of())); attachments = List.of( IncomingFileGroupTestFactory.create(), IncomingFileGroupTestFactory.createBuilder() @@ -277,11 +273,9 @@ class IntelliFormRepresentationAdapterTest { headerMap = Stream.concat(HEADER_ATTRIBUTE_NAMES.stream(), CUSTOM_HEADER_ATTRIBUTE_NAMES.stream()) .collect(Collectors.toMap(name -> name, name -> LoremIpsum.getInstance().getName())); document = buildXMLDocument("<root %s/>".formatted( - headerMap.entrySet().stream() - .map(entry -> "%s=\"%s\"".formatted(entry.getKey(), entry.getValue())) - .collect(Collectors.joining(" ")) - ) - ); + headerMap.entrySet().stream() + .map(entry -> "%s=\"%s\"".formatted(entry.getKey(), entry.getValue())) + .collect(Collectors.joining(" ")))); } @DisplayName("should include header field") @@ -358,11 +352,9 @@ class IntelliFormRepresentationAdapterTest { @Test void shouldThrowExceptionWithoutXmlDocument() { doReturn(Optional.empty()) - .when(adapter).findIntelliFormXMLRepresentation(formData); + .when(adapter).findIntelliFormXMLRepresentation(any()); - assertThrows(TechnicalException.class, () -> - adapter.adaptByRepresentations(formData) - ); + assertThrows(TechnicalException.class, () -> adapter.adaptByRepresentations(formData)); } @DisplayName("with xml document") @@ -392,12 +384,10 @@ class IntelliFormRepresentationAdapterTest { attachments = List.of(attachmentGroup); representations = List.of(xmlRepresentation, otherRepresentation); - when(formData.getRepresentations()).thenReturn(representations); - when(formData.getAttachments()).thenReturn(attachments); - doReturn(Optional.of(document)).when(adapter).findIntelliFormXMLRepresentation(formData); + doReturn(Optional.of(document)).when(adapter).findIntelliFormXMLRepresentation(any()); doReturn(Map.of(DOCUMENT_TEST_KEY, DOCUMENT_TEST_VALUE).entrySet().stream()) - .when(adapter).getFormDataEntriesFromDocument(document, attachments); + .when(adapter).getFormDataEntriesFromDocument(any(), any()); doReturn(headerFields) .when(adapter).createHeaderMap(document); @@ -420,7 +410,7 @@ class IntelliFormRepresentationAdapterTest { } private Object obtainMappingByKey(String key) { - var formDataResult = adapter.adaptByRepresentations(formData); + var formDataResult = adapter.adaptByRepresentations(FormDataTestFactory.create()); return formDataResult.getFormData().get(key); } @@ -428,7 +418,8 @@ class IntelliFormRepresentationAdapterTest { @DisplayName("should have attachments") @Test void shouldHaveAttachments() { - var formDataResult = adapter.adaptByRepresentations(formData); + var formDataResult = adapter.adaptByRepresentations(FormDataTestFactory.createBuilder() + .clearAttachments().attachments(attachments).build()); assertThat(formDataResult.getAttachments()).isEqualTo(attachments); } @@ -436,7 +427,9 @@ class IntelliFormRepresentationAdapterTest { @DisplayName("should have representations") @Test void shouldHaveRepresentations() { - var formDataResult = adapter.adaptByRepresentations(formData); + var formDataResult = adapter + .adaptByRepresentations(FormDataTestFactory.createBuilder().clearRepresentations() + .representations(representations).build()); assertThat(formDataResult.getRepresentations()).isEqualTo(representations); }