diff --git a/goofy-server/src/main/java/de/itvsh/goofy/vorgang/VorgangHeader.java b/goofy-server/src/main/java/de/itvsh/goofy/vorgang/VorgangHeader.java index 3a23ba7ff24f217339b0f625f19b12edda05a506..c160e0e4054dc669d465d8841a6ce1142f81ecd8 100644 --- a/goofy-server/src/main/java/de/itvsh/goofy/vorgang/VorgangHeader.java +++ b/goofy-server/src/main/java/de/itvsh/goofy/vorgang/VorgangHeader.java @@ -31,6 +31,7 @@ class VorgangHeader implements Vorgang { private VorgangStatus status; private ZonedDateTime createdAt; private String aktenzeichen; + private String nummer; @With @JsonProperty(access = Access.READ_ONLY) diff --git a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/EingangHeaderMapperTest.java b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/EingangHeaderMapperTest.java index 983c1871f6f8e8edc116ed7681d0259215a893ef..98c7a83ed9048d39f739b13481714815b09d9c33 100644 --- a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/EingangHeaderMapperTest.java +++ b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/EingangHeaderMapperTest.java @@ -6,9 +6,7 @@ import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import org.mapstruct.factory.Mappers; -import de.itvsh.ozg.pluto.vorgang.GrpcEingangHeader; - -public class EingangHeaderMapperTest { +class EingangHeaderMapperTest { private EingangHeaderMapper mapper = Mappers.getMapper(EingangHeaderMapper.class); @@ -17,11 +15,20 @@ public class EingangHeaderMapperTest { @Test void shouldMapCreatedAt() { - GrpcEingangHeader grpcEingangHeader = GrpcEingangHeaderTestFactory.create(); - - var eingang = mapper.toEingangHeader(grpcEingangHeader); + var eingang = callMapper(); assertThat(eingang.getCreatedAt()).isEqualTo(GrpcEingangHeaderTestFactory.CREATED_AT); } + + @Test + void shouldMapRequestId() { + var eingang = callMapper(); + + assertThat(eingang.getRequestId()).isEqualTo(GrpcEingangHeaderTestFactory.REQUEST_ID); + } + + private EingangHeader callMapper() { + return mapper.toEingangHeader(GrpcEingangHeaderTestFactory.create()); + } } } diff --git a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/GrpcEingangHeaderTestFactory.java b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/GrpcEingangHeaderTestFactory.java index 081080cc92cafa77c7990aecd390f131b04d5d2c..2b08250362af20c4eb33deea33c8f188aecf1a53 100644 --- a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/GrpcEingangHeaderTestFactory.java +++ b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/GrpcEingangHeaderTestFactory.java @@ -9,7 +9,7 @@ import de.itvsh.ozg.pluto.vorgang.GrpcEingangHeader; public class GrpcEingangHeaderTestFactory { - private final static String REQUEST_ID = UUID.randomUUID().toString(); + public final static String REQUEST_ID = UUID.randomUUID().toString(); private final static String CREATED_AT_STR = "2021-01-10T10:30:00Z"; public final static ZonedDateTime CREATED_AT = ZonedDateTime.parse(CREATED_AT_STR); private final static String FORM_ID = UUID.randomUUID().toString(); diff --git a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/GrpcVorgangHeaderTestFactory.java b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/GrpcVorgangHeaderTestFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..5661d8554626aabe119a911430fd12107528c00e --- /dev/null +++ b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/GrpcVorgangHeaderTestFactory.java @@ -0,0 +1,22 @@ +package de.itvsh.goofy.vorgang; + +import static de.itvsh.goofy.vorgang.VorgangHeaderTestFactory.*; + +import de.itvsh.ozg.pluto.vorgang.GrpcVorgangHeader; + +public class GrpcVorgangHeaderTestFactory { + + public static GrpcVorgangHeader create() { + return createBuilder().build(); + } + + public static GrpcVorgangHeader.Builder createBuilder() { + return GrpcVorgangHeader.newBuilder() + .setNummer(NUMMER) + .setCreatedAt(CREATED_AT_STR) + .setAktenzeichen(AKTENZEICHEN) + .setAssignedTo(ASSIGNED_TO) + .setName(NAME) + .setStatus(STATUS.name()); + } +} \ No newline at end of file diff --git a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/GrpcVorgangTestFactory.java b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/GrpcVorgangTestFactory.java index f24ecf280c7559e883fe6500eef3a864ee8ce774..2836ec97c5bd60bcb9e85485194c7218070745e3 100644 --- a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/GrpcVorgangTestFactory.java +++ b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/GrpcVorgangTestFactory.java @@ -16,6 +16,7 @@ public class GrpcVorgangTestFactory { private static final String NAME = LoremIpsum.getInstance().getWords(10); private static final String CREATED_AT = LocalDateTime.now().toString(); private static final String STATUS = "NEU"; + private static final String NUMMER = "VorgangNummer123"; public static GrpcFindVorgangResponse createVorgangResponse() { return createVorgangResponseBuilder().build(); @@ -35,6 +36,7 @@ public class GrpcVorgangTestFactory { return GrpcVorgangHeader.newBuilder() .setId(ID) .setName(NAME) + .setNummer(NUMMER) .setCreatedAt(CREATED_AT) .setStatus(STATUS); } diff --git a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/VorgangHeaderMapperTest.java b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/VorgangHeaderMapperTest.java new file mode 100644 index 0000000000000000000000000000000000000000..d8997f39d1b45f65588d6fab1ba585745483e578 --- /dev/null +++ b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/VorgangHeaderMapperTest.java @@ -0,0 +1,66 @@ +package de.itvsh.goofy.vorgang; + +import static de.itvsh.goofy.vorgang.VorgangHeaderTestFactory.*; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; +import org.mapstruct.factory.Mappers; +import org.mockito.InjectMocks; +import org.mockito.Spy; + +import de.itvsh.goofy.common.user.UserId; +import de.itvsh.goofy.common.user.UserIdMapper; +import de.itvsh.goofy.vorgang.Vorgang.VorgangStatus; + +class VorgangHeaderMapperTest { + + @Spy + @InjectMocks + private VorgangHeaderMapper mapper = Mappers.getMapper(VorgangHeaderMapper.class); + + @Spy + private UserIdMapper userIdMapper = Mappers.getMapper(UserIdMapper.class); + + @Nested + class TestGrpcVorgangHeaderToGoofyVorgangHeader { + @Test + void shouldMapCreatedAt() { + var header = callMapper(); + + assertThat(header.getCreatedAt()).isEqualTo(CREATED_AT); + } + + @Test + void shouldMapNummer() { + var header = callMapper(); + + assertThat(header.getNummer()).isEqualTo(NUMMER); + } + + @Test + void shouldMapAktenzeichen() { + var header = callMapper(); + + assertThat(header.getAktenzeichen()).isEqualTo(AKTENZEICHEN); + } + + @Test + void shouldMapStatus() { + var header = callMapper(); + + assertThat(header.getStatus()).isEqualTo(VorgangStatus.NEU); + } + + @Test + void shouldMapAssignedTo() { + var header = callMapper(); + + assertThat(header.getAssignedTo()).isEqualTo(UserId.from(ASSIGNED_TO)); + } + + private VorgangHeader callMapper() { + return mapper.toVorgangHeader(GrpcVorgangHeaderTestFactory.create()); + } + } +} diff --git a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/VorgangHeaderTestFactory.java b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/VorgangHeaderTestFactory.java index 248d9ed966aeac4fa9e506981458776f57924a8f..736b88e6181a99144ac378bb0465e1c552bcd786 100644 --- a/goofy-server/src/test/java/de/itvsh/goofy/vorgang/VorgangHeaderTestFactory.java +++ b/goofy-server/src/test/java/de/itvsh/goofy/vorgang/VorgangHeaderTestFactory.java @@ -16,17 +16,21 @@ public class VorgangHeaderTestFactory { public static final VorgangStatus STATUS = VorgangStatus.NEU; public static final String CREATED_AT_STR = "2021-01-10T10:30:00Z"; public static final ZonedDateTime CREATED_AT = ZonedDateTime.parse(CREATED_AT_STR); + public static final String NUMMER = "VorgangNummerTest123"; + public static final String AKTENZEICHEN = "0123456789XY"; + public static final String ASSIGNED_TO = "paul"; public static VorgangHeader create() { return createBuilder().build(); } public static VorgangHeader.VorgangHeaderBuilder createBuilder() { - return VorgangHeader.builder()// - .id(ID)// + return VorgangHeader.builder() + .id(ID) .version(VERSION) - .name(NAME)// - .status(STATUS)// + .name(NAME) + .nummer(NUMMER) + .status(STATUS) .createdAt(CREATED_AT) .assignedTo(UserTestFactory.ID); }