Skip to content
Snippets Groups Projects
Commit 19608b33 authored by Jörg Bolay's avatar Jörg Bolay
Browse files

OZG-5808 fix Mantelantrag Foem ID & Rename Mantelantrag Mapper

parent 2908a8b5
Branches
Tags
No related merge requests found
package de.ozgcloud.eingang.semantik.formbased.mantelantrag; package de.ozgcloud.eingang.semantik.formbased.mantelantrag;
import java.util.Map;
import java.util.Optional;
import java.util.function.UnaryOperator;
import java.util.stream.IntStream;
import org.apache.commons.collections.MapUtils;
import org.springframework.core.env.Environment;
import org.springframework.stereotype.Component;
import de.ozgcloud.eingang.common.errorhandling.TechnicalException; import de.ozgcloud.eingang.common.errorhandling.TechnicalException;
import de.ozgcloud.eingang.common.formdata.FormData; import de.ozgcloud.eingang.common.formdata.FormData;
import de.ozgcloud.eingang.common.formdata.ZustaendigeStelle; import de.ozgcloud.eingang.common.formdata.ZustaendigeStelle;
import de.ozgcloud.eingang.semantik.formbased.FormBasedMapper; import de.ozgcloud.eingang.semantik.formbased.FormBasedMapper;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2; import lombok.extern.log4j.Log4j2;
import org.apache.commons.collections.MapUtils;
import org.springframework.core.env.Environment;
import org.springframework.stereotype.Component;
import java.util.Map;
import java.util.Optional;
import java.util.function.UnaryOperator;
import java.util.stream.IntStream;
@Component @Component
@RequiredArgsConstructor @RequiredArgsConstructor
@Log4j2 @Log4j2
public class MantelantragFormBasedMapper implements FormBasedMapper { public class MantelantragZustaendigeStelleMapper implements FormBasedMapper {
static final String MANTELANTRAG_FORM_ID = "maa_mantelantrag/maa_mantelantrag_pvog"; static final String MANTELANTRAG_FORM_ID = "maa_mantelantrag/maa_mantelantrag";
static final String ZUSTELLUNG_NACHRICHTENBROKER_FIELD = "zustellung_nachrichtenbroker"; static final String ZUSTELLUNG_NACHRICHTENBROKER_FIELD = "zustellung_nachrichtenbroker";
static final String ORGANISATIONSEINHEIT_ID_FIELD = "kontaktsystem_oeid"; static final String ORGANISATIONSEINHEIT_ID_FIELD = "kontaktsystem_oeid";
static final String BEZEICHNUNG_FIELD = "OrganisationseinheitenBEZEICHNUNG"; static final String BEZEICHNUNG_FIELD = "OrganisationseinheitenBEZEICHNUNG";
......
package de.ozgcloud.eingang.semantik.formbased.mantelantrag; package de.ozgcloud.eingang.semantik.formbased.mantelantrag;
import static de.ozgcloud.eingang.semantik.formbased.mantelantrag.MantelantragFormBasedMapper.*; import de.ozgcloud.eingang.common.errorhandling.TechnicalException;
import static org.assertj.core.api.Assertions.*; import de.ozgcloud.eingang.common.formdata.FormData;
import static org.mockito.Mockito.*; import de.ozgcloud.eingang.common.formdata.FormDataTestFactory;
import de.ozgcloud.eingang.common.formdata.FormHeaderTestFactory;
import java.util.HashMap; import de.ozgcloud.eingang.common.formdata.ZustaendigeStelle;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Stream;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Nested;
...@@ -22,19 +18,23 @@ import org.mockito.Mock; ...@@ -22,19 +18,23 @@ import org.mockito.Mock;
import org.mockito.Spy; import org.mockito.Spy;
import org.springframework.core.env.Environment; import org.springframework.core.env.Environment;
import de.ozgcloud.eingang.common.errorhandling.TechnicalException; import java.util.HashMap;
import de.ozgcloud.eingang.common.formdata.FormData; import java.util.Map;
import de.ozgcloud.eingang.common.formdata.FormDataTestFactory; import java.util.function.Function;
import de.ozgcloud.eingang.common.formdata.FormHeaderTestFactory; import java.util.stream.Stream;
import de.ozgcloud.eingang.common.formdata.ZustaendigeStelle;
class MantelantragFormBasedMapperTest { import static de.ozgcloud.eingang.semantik.formbased.mantelantrag.MantelantragZustaendigeStelleMapper.*;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
import static org.mockito.Mockito.*;
class MantelantragZustaendigeStelleMapperTest {
private final static String TARGET_OEID = "123456"; private final static String TARGET_OEID = "123456";
private static final String IDENTIFIER = "gea:test"; private static final String IDENTIFIER = "gea:test";
@Spy @Spy
@InjectMocks @InjectMocks
private MantelantragFormBasedMapper mapper; private MantelantragZustaendigeStelleMapper mapper;
@Mock @Mock
private Environment environment; private Environment environment;
...@@ -133,10 +133,26 @@ class MantelantragFormBasedMapperTest { ...@@ -133,10 +133,26 @@ class MantelantragFormBasedMapperTest {
@Nested @Nested
class TestAdaptFormDataWithPossibleException { class TestAdaptFormDataWithPossibleException {
static final String TARGET_OPTIONAL_FIELD_VALUE = "optionalFieldValue";
static final Map<String, Function<ZustaendigeStelle, String>> FIELD_NAME_TO_EXPECTED_VALUE_EXTRACTOR = Map.of(
BEZEICHNUNG_FIELD, ZustaendigeStelle::getBezeichnung,
EMAIL_FIELD, ZustaendigeStelle::getEmail,
HAUSANSCHRIFT_STRASSE_FIELD, ZustaendigeStelle::getHausanschriftStrasse,
HAUSANSCHRIFT_PLZ_FIELD, ZustaendigeStelle::getHausanschriftPlz,
HAUSANSCHRIFT_ORT_FIELD, ZustaendigeStelle::getHausanschriftOrt,
TELEFON_FIELD, ZustaendigeStelle::getTelefon
);
private FormData formData; private FormData formData;
private Map<String, Object> fieldMap; private Map<String, Object> fieldMap;
private static Stream<Arguments> fieldNameAndSlotIndex() {
return Stream.of(0, 1, 2)
.flatMap(slotIndex -> FIELD_NAME_TO_EXPECTED_VALUE_EXTRACTOR
.keySet().stream()
.map(fieldName -> Arguments.of(slotIndex, fieldName))
);
}
@BeforeEach @BeforeEach
void mock() { void mock() {
fieldMap = new HashMap<>(Map.of( fieldMap = new HashMap<>(Map.of(
...@@ -196,17 +212,6 @@ class MantelantragFormBasedMapperTest { ...@@ -196,17 +212,6 @@ class MantelantragFormBasedMapperTest {
.isInstanceOf(TechnicalException.class); .isInstanceOf(TechnicalException.class);
} }
static final String TARGET_OPTIONAL_FIELD_VALUE = "optionalFieldValue";
static final Map<String, Function<ZustaendigeStelle, String>> FIELD_NAME_TO_EXPECTED_VALUE_EXTRACTOR = Map.of(
BEZEICHNUNG_FIELD, ZustaendigeStelle::getBezeichnung,
EMAIL_FIELD, ZustaendigeStelle::getEmail,
HAUSANSCHRIFT_STRASSE_FIELD, ZustaendigeStelle::getHausanschriftStrasse,
HAUSANSCHRIFT_PLZ_FIELD, ZustaendigeStelle::getHausanschriftPlz,
HAUSANSCHRIFT_ORT_FIELD, ZustaendigeStelle::getHausanschriftOrt,
TELEFON_FIELD, ZustaendigeStelle::getTelefon
);
@DisplayName("should map optional field") @DisplayName("should map optional field")
@ParameterizedTest @ParameterizedTest
@MethodSource("fieldNameAndSlotIndex") @MethodSource("fieldNameAndSlotIndex")
...@@ -247,14 +252,6 @@ class MantelantragFormBasedMapperTest { ...@@ -247,14 +252,6 @@ class MantelantragFormBasedMapperTest {
return valueExtractor.apply(zustaendigeStelle); return valueExtractor.apply(zustaendigeStelle);
} }
private static Stream<Arguments> fieldNameAndSlotIndex() {
return Stream.of(0, 1, 2)
.flatMap(slotIndex -> FIELD_NAME_TO_EXPECTED_VALUE_EXTRACTOR
.keySet().stream()
.map(fieldName -> Arguments.of(slotIndex, fieldName))
);
}
private void mockWithSomeOEID(int slotIndex) { private void mockWithSomeOEID(int slotIndex) {
mockWithOEID(slotIndex, "some"); mockWithOEID(slotIndex, "some");
} }
...@@ -313,6 +310,14 @@ class MantelantragFormBasedMapperTest { ...@@ -313,6 +310,14 @@ class MantelantragFormBasedMapperTest {
@DisplayName("get name for slot index") @DisplayName("get name for slot index")
@Nested @Nested
class TestGetNameForSlotIndex { class TestGetNameForSlotIndex {
private static Stream<Arguments> nameAndSlotIndexAndExpected() {
return Stream.of(
Arguments.of("name", 0, "name"),
Arguments.of("name", 1, "name2"),
Arguments.of("name", 2, "name3")
);
}
@DisplayName("should return name") @DisplayName("should return name")
@ParameterizedTest @ParameterizedTest
@MethodSource("nameAndSlotIndexAndExpected") @MethodSource("nameAndSlotIndexAndExpected")
...@@ -321,13 +326,5 @@ class MantelantragFormBasedMapperTest { ...@@ -321,13 +326,5 @@ class MantelantragFormBasedMapperTest {
assertThat(resultName).isEqualTo(expected); assertThat(resultName).isEqualTo(expected);
} }
private static Stream<Arguments> nameAndSlotIndexAndExpected() {
return Stream.of(
Arguments.of("name", 0, "name"),
Arguments.of("name", 1, "name2"),
Arguments.of("name", 2, "name3")
);
}
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment