From ee36b93a199f8f29e3b33cbbc6ed4f225ac85c1e Mon Sep 17 00:00:00 2001
From: Jan Zickermann <jan.zickermann@dataport.de>
Date: Tue, 23 Jul 2024 14:20:43 +0200
Subject: [PATCH] KOP-2139 KOP-2446 getNextMessagesMetadata: Call getStatusList
 without checkAccountActive

---
 .../de/ozgcloud/xta/client/XtaClient.java     | 11 ++++++---
 .../de/ozgcloud/xta/client/XtaClientTest.java | 24 +++++++++++++++++++
 2 files changed, 32 insertions(+), 3 deletions(-)

diff --git a/src/main/java/de/ozgcloud/xta/client/XtaClient.java b/src/main/java/de/ozgcloud/xta/client/XtaClient.java
index 4307d0f..ddc83b2 100644
--- a/src/main/java/de/ozgcloud/xta/client/XtaClient.java
+++ b/src/main/java/de/ozgcloud/xta/client/XtaClient.java
@@ -25,11 +25,16 @@ public class XtaClient {
 	public XtaMessageMetaDataAndHeader getMessagesMetadata(String xtaIdentifier)
 			throws XTAWSTechnicalProblemException, PermissionDeniedException {
 		service.checkAccountActive(xtaIdentifier);
-		return service.getStatusList(xtaIdentifier, config.getMaxListItems());
+		return getStatusList(xtaIdentifier);
 	}
 
-	public XtaMessageMetaDataAndHeader getNextMessagesMetadata(String xtaIdentifier, String msgBoxRequestId) {
-		throw new NotImplementedException("");
+	public XtaMessageMetaDataAndHeader getNextMessagesMetadata(String xtaIdentifier)
+			throws XTAWSTechnicalProblemException, PermissionDeniedException {
+		return getStatusList(xtaIdentifier);
+	}
+
+	private XtaMessageMetaDataAndHeader getStatusList(String xtaIdentifier) throws XTAWSTechnicalProblemException, PermissionDeniedException {
+		return service.getStatusList(xtaIdentifier, config.getMaxListItems());
 	}
 
 	public XtaMessage getMessage(XtaMessageId messageId) {
diff --git a/src/test/java/de/ozgcloud/xta/client/XtaClientTest.java b/src/test/java/de/ozgcloud/xta/client/XtaClientTest.java
index 3eb0d14..2afffd6 100644
--- a/src/test/java/de/ozgcloud/xta/client/XtaClientTest.java
+++ b/src/test/java/de/ozgcloud/xta/client/XtaClientTest.java
@@ -64,4 +64,28 @@ class XtaClientTest {
 
 	}
 
+	@DisplayName("get next messages meta data")
+	@Nested
+	class TestGetNextMessagesMetaData {
+
+		@Mock
+		XtaMessageMetaDataAndHeader xtaMessageMetaDataAndHeader;
+
+		@BeforeEach
+		@SneakyThrows
+		void mock() {
+			when(service.getStatusList(SELF_IDENTIFIER, MAX_LIST_ITEMS)).thenReturn(xtaMessageMetaDataAndHeader);
+			when(config.getMaxListItems()).thenReturn(MAX_LIST_ITEMS);
+		}
+
+		@DisplayName("should return get status list response")
+		@Test
+		@SneakyThrows
+		void shouldReturnGetStatusListResponse() {
+			var result = client.getNextMessagesMetadata(SELF_IDENTIFIER);
+
+			assertThat(result).isEqualTo(xtaMessageMetaDataAndHeader);
+		}
+	}
+
 }
\ No newline at end of file
-- 
GitLab