From 7e8dd494e3833a95bd2d99ad0b45d63ad76bd8b3 Mon Sep 17 00:00:00 2001
From: "Zickermann, Jan" <jan.zickermann@dataport.de>
Date: Wed, 8 May 2024 16:39:10 +0200
Subject: [PATCH] OZG-5415 XtaRemoteITCase: Fix capturing all eingangs

---
 .../ozgcloud/eingang/xta/XtaRemoteITCase.java | 39 ++++++++++++-------
 .../src/test/resources/application-itcase.yml |  2 +-
 2 files changed, 25 insertions(+), 16 deletions(-)

diff --git a/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaRemoteITCase.java b/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaRemoteITCase.java
index eadc4d9ab..de69b7cec 100644
--- a/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaRemoteITCase.java
+++ b/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaRemoteITCase.java
@@ -3,8 +3,10 @@ package de.ozgcloud.eingang.xta;
 import static org.assertj.core.api.Assertions.*;
 import static org.grpcmock.GrpcMock.*;
 
+import java.util.Collection;
 import java.util.List;
 
+import org.grpcmock.interceptors.CapturedRequest;
 import org.grpcmock.springboot.AutoConfigureGrpcMock;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
@@ -18,7 +20,6 @@ import org.springframework.context.annotation.Bean;
 import org.springframework.test.context.ActiveProfiles;
 
 import de.ozgcloud.eingang.Application;
-import de.ozgcloud.eingang.semantik.SemantikAdapter;
 import de.ozgcloud.vorgang.grpc.binaryFile.BinaryFileServiceGrpc;
 import de.ozgcloud.vorgang.grpc.binaryFile.GrpcUploadBinaryFileResponse;
 import de.ozgcloud.vorgang.vorgang.GrpcCreateVorgangRequest;
@@ -26,13 +27,11 @@ import de.ozgcloud.vorgang.vorgang.GrpcCreateVorgangResponse;
 import de.ozgcloud.vorgang.vorgang.GrpcEingang;
 import de.ozgcloud.vorgang.vorgang.GrpcFinishCreationResponse;
 import de.ozgcloud.vorgang.vorgang.VorgangServiceGrpc;
-import lombok.RequiredArgsConstructor;
 
 @Disabled("real live test - do only activate for manual testing (will empty XTA-E mailbox)")
 @SpringBootTest(classes = {
 		Application.class,
 		XtaRemoteITCase.ActivateXTARunnerConfig.class,
-		XtaRemoteITCase.ActivateXTARunnerConfig.class
 }, properties = { "ozgcloud.xta.server.name=LI33-0005",
 		"ozgcloud.xta.server.address=LI33-0005:3000",
 		"ozgcloud.xta.server.protocol=https",
@@ -50,19 +49,29 @@ class XtaRemoteITCase {
 	@DisplayName("run get xta messages")
 	@Nested
 	class TestRunGetXtaMessages {
+
 		@BeforeEach
 		void setup() {
-			// Mock 'start vorgang creation'
+			mockStartVorgangCreation();
+			mockUploadBinaryFiles();
+			mockFinishVorgangCreation();
+		}
+
+		private void mockStartVorgangCreation() {
 			stubFor(
 					unaryMethod(VorgangServiceGrpc.getStartCreationMethod())
 							.willReturn(GrpcCreateVorgangResponse.getDefaultInstance())
 			);
-			// Mock 'upload binary files'
+		}
+
+		private void mockUploadBinaryFiles() {
 			stubFor(
 					clientStreamingMethod(BinaryFileServiceGrpc.getUploadBinaryFileAsStreamMethod())
 							.willReturn(GrpcUploadBinaryFileResponse.getDefaultInstance())
 			);
-			// Mock 'finish vorgang creation'
+		}
+
+		private void mockFinishVorgangCreation() {
 			stubFor(
 					unaryMethod(VorgangServiceGrpc.getFinishCreationMethod())
 							.willReturn(GrpcFinishCreationResponse.getDefaultInstance())
@@ -87,6 +96,7 @@ class XtaRemoteITCase {
 
 		}
 
+		@Disabled
 		@DisplayName("should have postfach id")
 		@Test
 		void shouldHavePostfachId() {
@@ -109,6 +119,7 @@ class XtaRemoteITCase {
 			);
 		}
 
+		@Disabled
 		@DisplayName("should have organistationseinheit ID")
 		@Test
 		void shouldHaveOrganistationseinheitId() {
@@ -124,6 +135,7 @@ class XtaRemoteITCase {
 
 		}
 
+		@Disabled
 		@DisplayName("should have vorgang nummer")
 		@Test
 		void shouldHaveVorgangNummer() {
@@ -143,21 +155,18 @@ class XtaRemoteITCase {
 			return capturedRequestsFor(
 					calledMethod(VorgangServiceGrpc.getStartCreationMethod())
 			)
-					.getFirst()
-					.requests()
-					.stream().map(GrpcCreateVorgangRequest::getEingang)
+					.stream()
+					.map(CapturedRequest::requests)
+					.flatMap(Collection::stream)
+					.map(GrpcCreateVorgangRequest::getEingang)
 					.toList();
 		}
 	}
 
-	@RequiredArgsConstructor
 	static class ActivateXTARunnerConfig {
-		private final XtaService service;
-		private final SemantikAdapter semantikAdapter;
-
 		@Bean
-		XtaRunner xtaRunner() {
-			return new XtaRunner(service, semantikAdapter);
+		XtaRunner testXtaRunner() {
+			return new XtaRunner();
 		}
 	}
 
diff --git a/xta-adapter/src/test/resources/application-itcase.yml b/xta-adapter/src/test/resources/application-itcase.yml
index 99b88fbe1..99473ad03 100644
--- a/xta-adapter/src/test/resources/application-itcase.yml
+++ b/xta-adapter/src/test/resources/application-itcase.yml
@@ -1,6 +1,6 @@
 ozgcloud:
   xta:
-    identifier: afmsh:010600000000_Online-Dienste
+    identifier: afmsh:ozg-cloud-dev001
     server:
       address: localhost:3000
       name: LI33-0005
-- 
GitLab