From b4fa878245788dd469b1bbaab3d7bdb5f86ef49c Mon Sep 17 00:00:00 2001 From: Jan Zickermann <jan.zickermann@dataport.de> Date: Mon, 31 Mar 2025 13:39:32 +0200 Subject: [PATCH] KOP-3126 Fix RemoteITCase --- pom.xml | 6 ------ .../xta/client/XtaClientRemoteITCase.java | 10 ++++++++-- .../XtaServerSetupExtensionTestUtil.java | 19 +++++++++++++++---- 3 files changed, 23 insertions(+), 12 deletions(-) diff --git a/pom.xml b/pom.xml index f6c7cd1..a2bd7bb 100644 --- a/pom.xml +++ b/pom.xml @@ -174,12 +174,6 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> - <configuration> - <excludes> - <!--docker environment in der pipeline laeuft noch nicht--> - <exclude>**/XtaClientITCase.java</exclude> - </excludes> - </configuration> <executions> <execution> <goals> diff --git a/src/test/java/de/ozgcloud/xta/client/XtaClientRemoteITCase.java b/src/test/java/de/ozgcloud/xta/client/XtaClientRemoteITCase.java index 8878a3f..319613b 100644 --- a/src/test/java/de/ozgcloud/xta/client/XtaClientRemoteITCase.java +++ b/src/test/java/de/ozgcloud/xta/client/XtaClientRemoteITCase.java @@ -7,6 +7,7 @@ import static org.assertj.core.api.Assertions.*; import java.util.ArrayList; import java.util.List; +import java.util.Optional; import java.util.function.Consumer; import java.util.function.Predicate; import java.util.stream.Stream; @@ -65,10 +66,10 @@ class XtaClientRemoteITCase { @BeforeEach @SneakyThrows void setup() { - processMessageDummy = (message) -> { + processMessageDummy = message -> { }; supportCheckedMetadataItems = new ArrayList<>(); - isSupportedDummy = (metaData) -> true; + isSupportedDummy = metaData -> true; processedMessages = new ArrayList<>(); testClient = XTA_REMOTE_SERVER_SETUP_EXTENSION.getTestClient(); @@ -76,6 +77,11 @@ class XtaClientRemoteITCase { devClient = XTA_REMOTE_SERVER_SETUP_EXTENSION.getDevClient(); silentDevClient = XTA_REMOTE_SERVER_SETUP_EXTENSION.getSilentDevClient(); + if (Optional.ofNullable(System.getenv("CLEAR_ALL_MESSAGES")).map(d -> d.equals("yes")).orElse(false)) { + closeAllMessages(XTA_REMOTE_SERVER_SETUP_EXTENSION.getSilentDevClientConfig(), DEV_READER_CLIENT_IDENTIFIER); + closeAllMessages(XTA_REMOTE_SERVER_SETUP_EXTENSION.getSilentTestClientConfig(), TEST_READER_CLIENT_IDENTIFIER); + } + failIfAnyMessagePending(XTA_REMOTE_SERVER_SETUP_EXTENSION.getSilentDevClientConfig(), DEV_READER_CLIENT_IDENTIFIER); failIfAnyMessagePending(XTA_REMOTE_SERVER_SETUP_EXTENSION.getSilentTestClientConfig(), TEST_READER_CLIENT_IDENTIFIER); diff --git a/src/test/java/de/ozgcloud/xta/client/extension/XtaServerSetupExtensionTestUtil.java b/src/test/java/de/ozgcloud/xta/client/extension/XtaServerSetupExtensionTestUtil.java index 6d2731a..4718256 100644 --- a/src/test/java/de/ozgcloud/xta/client/extension/XtaServerSetupExtensionTestUtil.java +++ b/src/test/java/de/ozgcloud/xta/client/extension/XtaServerSetupExtensionTestUtil.java @@ -16,6 +16,7 @@ import de.ozgcloud.xta.client.core.WrappedXtaService; import de.ozgcloud.xta.client.core.WrappedXtaServiceFactory; import de.ozgcloud.xta.client.exception.XtaClientRuntimeException; import de.ozgcloud.xta.client.gen.v3.de.xoev.transport.xta.x211.CodeFehlernummer; +import de.ozgcloud.xta.client.gen.v3.de.xoev.transport.xta.x211.InvalidMessageIDException; import de.ozgcloud.xta.client.gen.v3.de.xoev.transport.xta.x211.MessageSchemaViolationException; import de.ozgcloud.xta.client.gen.v3.de.xoev.transport.xta.x211.ParameterIsNotValidException; import de.ozgcloud.xta.client.gen.v3.de.xoev.transport.xta.x211.PermissionDeniedException; @@ -122,11 +123,19 @@ public class XtaServerSetupExtensionTestUtil { closeMessagesById(config, clientId, messageIds); } - @SneakyThrows public static void closeMessagesById(XtaClientConfig config, XtaIdentifier clientId, List<String> messageIds) { var wrappedService = createWrappedService(config); for (var messageId : messageIds) { + closeMessageById(wrappedService, messageId, clientId); + } + } + + @SneakyThrows + private static void closeMessageById(WrappedXtaService wrappedService, String messageId, XtaIdentifier clientId) { + try { wrappedService.close(messageId, clientId); + } catch (InvalidMessageIDException e) { + log.warn("Failed closing message, possibly it has already been closed! '{}' (reader: {})", messageId, clientId); } } @@ -135,10 +144,12 @@ public class XtaServerSetupExtensionTestUtil { return WrappedXtaServiceFactory.from(config).create(); } - public static XtaMessageMetaData withoutMessageIdAndSize(XtaMessageMetaData metaData) { + public static XtaMessageMetaData withoutMessageIdAndSizeAndDelivery(XtaMessageMetaData metaData) { return metaData.toBuilder() .messageId(null) .messageSize(null) + .deliveryAttributesDelivery(null) + .deliveryAttributesOrigin(null) .build(); } @@ -268,9 +279,9 @@ public class XtaServerSetupExtensionTestUtil { // Assert equal metadata (ignoring message id and size since they should be null before sending) assertThat(processedMessages) .extracting(XtaMessage::metaData) - .extracting(XtaServerSetupExtensionTestUtil::withoutMessageIdAndSize) + .extracting(XtaServerSetupExtensionTestUtil::withoutMessageIdAndSizeAndDelivery) .containsExactlyInAnyOrderElementsOf(Arrays.stream(messageMetaDataItems) - .map(XtaServerSetupExtensionTestUtil::withoutMessageIdAndSize) + .map(XtaServerSetupExtensionTestUtil::withoutMessageIdAndSizeAndDelivery) .toList()); } catch (AssertionError | RuntimeException e) { log.error("Messages do not exactly contain excepted metadata!"); -- GitLab