From 9f06032056fdfe7bd06eda8b7620570169749fe5 Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Wed, 6 Nov 2024 09:29:06 +0100 Subject: [PATCH] OZG-6990 add mapper tests --- .../GrpcClientAttributeTestFactory.java | 69 +++++++++++++++++++ .../OzgCloudClientAttributeMapperTest.java | 37 +++++++++- 2 files changed, 105 insertions(+), 1 deletion(-) create mode 100644 api-lib-core/src/test/java/de/ozgcloud/apilib/attributes/GrpcClientAttributeTestFactory.java diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/attributes/GrpcClientAttributeTestFactory.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/attributes/GrpcClientAttributeTestFactory.java new file mode 100644 index 0000000..4d8fe27 --- /dev/null +++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/attributes/GrpcClientAttributeTestFactory.java @@ -0,0 +1,69 @@ +/* + * Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den + * Ministerpräsidenten des Landes Schleswig-Holstein + * Staatskanzlei + * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung + * + * Lizenziert unter der EUPL, Version 1.2 oder - sobald + * diese von der Europäischen Kommission genehmigt wurden - + * Folgeversionen der EUPL ("Lizenz"); + * Sie dürfen dieses Werk ausschließlich gemäß + * dieser Lizenz nutzen. + * Eine Kopie der Lizenz finden Sie hier: + * + * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 + * + * Sofern nicht durch anwendbare Rechtsvorschriften + * gefordert oder in schriftlicher Form vereinbart, wird + * die unter der Lizenz verbreitete Software "so wie sie + * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - + * ausdrücklich oder stillschweigend - verbreitet. + * Die sprachspezifischen Genehmigungen und Beschränkungen + * unter der Lizenz sind dem Lizenztext zu entnehmen. + */ + +package de.ozgcloud.apilib.attributes; + +import de.ozgcloud.vorgang.grpc.clientAttribute.GrpcAccessPermission; +import de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttribute; +import de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttributeValue; + +public class GrpcClientAttributeTestFactory { + + public static final GrpcAccessPermission ACCESS_PERMISSION = GrpcAccessPermission.READ_ONLY; + + public static final GrpcClientAttributeValue BOOLEAN_VALUE = + GrpcClientAttributeValue.newBuilder().setBoolValue(OzgCloudClientAttributeTestFactory.BOOLEAN_VALUE).build(); + + public static final GrpcClientAttributeValue STRING_VALUE = + GrpcClientAttributeValue.newBuilder().setStringValue(OzgCloudClientAttributeTestFactory.STRING_VALUE).build(); + + public static final GrpcClientAttributeValue LONG_VALUE = GrpcClientAttributeValue.newBuilder().setIntValue( + OzgCloudClientAttributeTestFactory.LONG_VALUE).build(); + + public static final GrpcClientAttributeValue DOUBLE_VALUE = + GrpcClientAttributeValue.newBuilder().setDoubleValue(OzgCloudClientAttributeTestFactory.DOUBLE_VALUE).build(); + + public static GrpcClientAttribute createBoolean() { + return createBuilder().setValue(BOOLEAN_VALUE).build(); + } + + public static GrpcClientAttribute createString() { + return createBuilder().setValue(STRING_VALUE).build(); + } + + public static GrpcClientAttribute createLong() { + return createBuilder().setValue(LONG_VALUE).build(); + } + + public static GrpcClientAttribute createDouble() { + return createBuilder().setValue(DOUBLE_VALUE).build(); + } + + public static GrpcClientAttribute.Builder createBuilder() { + return GrpcClientAttribute.newBuilder() + .setClientName(OzgCloudClientAttributeTestFactory.CLIENT) + .setAttributeName(OzgCloudClientAttributeTestFactory.ATTRIBUTE_NAME) + .setAccess(ACCESS_PERMISSION); + } +} diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/attributes/grpc/OzgCloudClientAttributeMapperTest.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/attributes/grpc/OzgCloudClientAttributeMapperTest.java index df16c7e..0676d2f 100644 --- a/api-lib-core/src/test/java/de/ozgcloud/apilib/attributes/grpc/OzgCloudClientAttributeMapperTest.java +++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/attributes/grpc/OzgCloudClientAttributeMapperTest.java @@ -24,8 +24,43 @@ package de.ozgcloud.apilib.attributes.grpc; -import static org.junit.jupiter.api.Assertions.*; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Test; +import org.mapstruct.factory.Mappers; + +import de.ozgcloud.apilib.attributes.GrpcClientAttributeTestFactory; +import de.ozgcloud.apilib.attributes.OzgCloudClientAttributeTestFactory; class OzgCloudClientAttributeMapperTest { + private OzgCloudClientAttributeMapper mapper = Mappers.getMapper(OzgCloudClientAttributeMapper.class); + + @Test + void shouldMapBooleanAttribute() { + var result = mapper.toGrpc(OzgCloudClientAttributeTestFactory.createBoolean()); + + assertThat(result).usingRecursiveComparison().isEqualTo(GrpcClientAttributeTestFactory.createBoolean()); + } + + @Test + void shouldMapStringAttribute() { + var result = mapper.toGrpc(OzgCloudClientAttributeTestFactory.createString()); + + assertThat(result).usingRecursiveComparison().isEqualTo(GrpcClientAttributeTestFactory.createString()); + } + + @Test + void shouldMapLongAttribute() { + var result = mapper.toGrpc(OzgCloudClientAttributeTestFactory.createLong()); + + assertThat(result).usingRecursiveComparison().isEqualTo(GrpcClientAttributeTestFactory.createLong()); + } + + @Test + void shouldMapDoubleAttribute() { + var result = mapper.toGrpc(OzgCloudClientAttributeTestFactory.createDouble()); + + assertThat(result).usingRecursiveComparison().isEqualTo(GrpcClientAttributeTestFactory.createDouble()); + } } \ No newline at end of file -- GitLab