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
No related branches found
No related tags found
No related merge requests found
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.formdata.FormData;
import de.ozgcloud.eingang.common.formdata.ZustaendigeStelle;
import de.ozgcloud.eingang.semantik.formbased.FormBasedMapper;
import lombok.RequiredArgsConstructor;
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
@RequiredArgsConstructor
@Log4j2
public class MantelantragFormBasedMapper implements FormBasedMapper {
static final String MANTELANTRAG_FORM_ID = "maa_mantelantrag/maa_mantelantrag_pvog";
public class MantelantragZustaendigeStelleMapper implements FormBasedMapper {
static final String MANTELANTRAG_FORM_ID = "maa_mantelantrag/maa_mantelantrag";
static final String ZUSTELLUNG_NACHRICHTENBROKER_FIELD = "zustellung_nachrichtenbroker";
static final String ORGANISATIONSEINHEIT_ID_FIELD = "kontaktsystem_oeid";
static final String BEZEICHNUNG_FIELD = "OrganisationseinheitenBEZEICHNUNG";
......
package de.ozgcloud.eingang.semantik.formbased.mantelantrag;
import static de.ozgcloud.eingang.semantik.formbased.mantelantrag.MantelantragFormBasedMapper.*;
import static org.assertj.core.api.Assertions.*;
import static org.mockito.Mockito.*;
import java.util.HashMap;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Stream;
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.FormHeaderTestFactory;
import de.ozgcloud.eingang.common.formdata.ZustaendigeStelle;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Nested;
......@@ -22,19 +18,23 @@ import org.mockito.Mock;
import org.mockito.Spy;
import org.springframework.core.env.Environment;
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.FormHeaderTestFactory;
import de.ozgcloud.eingang.common.formdata.ZustaendigeStelle;
import java.util.HashMap;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Stream;
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 static final String IDENTIFIER = "gea:test";
@Spy
@InjectMocks
private MantelantragFormBasedMapper mapper;
private MantelantragZustaendigeStelleMapper mapper;
@Mock
private Environment environment;
......@@ -133,10 +133,26 @@ class MantelantragFormBasedMapperTest {
@Nested
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 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
void mock() {
fieldMap = new HashMap<>(Map.of(
......@@ -196,17 +212,6 @@ class MantelantragFormBasedMapperTest {
.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")
@ParameterizedTest
@MethodSource("fieldNameAndSlotIndex")
......@@ -247,14 +252,6 @@ class MantelantragFormBasedMapperTest {
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) {
mockWithOEID(slotIndex, "some");
}
......@@ -313,6 +310,14 @@ class MantelantragFormBasedMapperTest {
@DisplayName("get name for slot index")
@Nested
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")
@ParameterizedTest
@MethodSource("nameAndSlotIndexAndExpected")
......@@ -321,13 +326,5 @@ class MantelantragFormBasedMapperTest {
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