From 29be1d2330b87c1476ee6f80383a24859832b3f7 Mon Sep 17 00:00:00 2001
From: Felix Reichenbach <felix.reichenbach@mgm-tp.com>
Date: Thu, 2 Jan 2025 10:30:29 +0100
Subject: [PATCH] OZG-7038 use file reader instead of static utils

---
 .../archive/common/xta/XtaFileHelper.java     |   2 +-
 .../archive/common/xta/XtaFileReader.java     |   7 +-
 .../archive/common/xta/XtaFileXmlUtils.java   |  18 ---
 .../xta/XtaImportConfirmationHandler.java     |  15 ++-
 .../archive/quittung/QuittungService.java     |  10 +-
 .../archive/common/xta/XtaFileHelperTest.java |   3 -
 .../archive/common/xta/XtaFileReaderTest.java |  15 ++-
 .../common/xta/XtaFileXmlUtilsTest.java       |   2 -
 .../xta/XtaImportConfirmationHandlerTest.java | 114 +++++++++++-------
 .../archive/quittung/QuittungServiceTest.java |  14 +--
 10 files changed, 109 insertions(+), 91 deletions(-)
 rename archive-manager-server/src/{test => main}/java/de/ozgcloud/archive/common/xta/XtaFileReader.java (76%)

diff --git a/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaFileHelper.java b/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaFileHelper.java
index d87b3af..2e4f493 100644
--- a/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaFileHelper.java
+++ b/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaFileHelper.java
@@ -8,6 +8,6 @@ import de.ozgcloud.xta.client.model.XtaFile;
 public class XtaFileHelper {
 
 	public XtaImportConfirmationHandler initImportConfirmationHandler(XtaFile file) {
-		return XtaImportConfirmationHandler.initFrom(file);
+		return XtaImportConfirmationHandler.createFrom(file);
 	}
 }
\ No newline at end of file
diff --git a/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileReader.java b/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaFileReader.java
similarity index 76%
rename from archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileReader.java
rename to archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaFileReader.java
index 770f225..87320fb 100644
--- a/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileReader.java
+++ b/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaFileReader.java
@@ -8,12 +8,17 @@ import jakarta.xml.bind.Unmarshaller;
 
 import de.ozgcloud.common.errorhandling.TechnicalException;
 import de.ozgcloud.xta.client.model.XtaFile;
+import de.xoev.xdomea.AbgabeImportBestaetigen0402;
 
 class XtaFileReader<T> {
 
 	private final Unmarshaller unmarshaller;
 
-	XtaFileReader(Class<T> clazz) {
+	public static XtaFileReader<AbgabeImportBestaetigen0402> createAbgabeImportBestaetigen0402Reader() {
+		return new XtaFileReader<>(AbgabeImportBestaetigen0402.class);
+	}
+
+	private XtaFileReader(Class<T> clazz) {
 		try {
 			unmarshaller = JAXBContext.newInstance(clazz).createUnmarshaller();
 		} catch (JAXBException e) {
diff --git a/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaFileXmlUtils.java b/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaFileXmlUtils.java
index 8f446a0..b1fa014 100644
--- a/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaFileXmlUtils.java
+++ b/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaFileXmlUtils.java
@@ -6,14 +6,9 @@ import javax.xml.parsers.DocumentBuilder;
 import javax.xml.parsers.DocumentBuilderFactory;
 import javax.xml.parsers.ParserConfigurationException;
 
-import jakarta.xml.bind.JAXBContext;
-import jakarta.xml.bind.JAXBException;
-import jakarta.xml.bind.Unmarshaller;
-
 import org.w3c.dom.Document;
 import org.xml.sax.SAXException;
 
-import de.ozgcloud.common.errorhandling.TechnicalException;
 import de.ozgcloud.xta.client.model.XtaFile;
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
@@ -46,17 +41,4 @@ public class XtaFileXmlUtils {
 	private static DocumentBuilder createDocumentBuilder() throws ParserConfigurationException {
 		return DocumentBuilderFactory.newDefaultInstance().newDocumentBuilder();
 	}
-
-	public static <T> T read(XtaFile xtaFile, Class<T> clazz) {
-		try {
-			return XtaFileXmlUtils.unmarshalContent(xtaFile, JAXBContext.newInstance(clazz).createUnmarshaller());
-		} catch (Exception e) {
-			throw new TechnicalException("Error reading xta file content", e);
-		}
-	}
-
-	@SuppressWarnings("unchecked")
-	private static <T> T unmarshalContent(XtaFile xtaFile, Unmarshaller jaxbUnmarshaller) throws JAXBException, IOException {
-		return (T) jaxbUnmarshaller.unmarshal(xtaFile.content().getInputStream());
-	}
 }
\ No newline at end of file
diff --git a/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaImportConfirmationHandler.java b/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaImportConfirmationHandler.java
index d286cbb..e3c3476 100644
--- a/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaImportConfirmationHandler.java
+++ b/archive-manager-server/src/main/java/de/ozgcloud/archive/common/xta/XtaImportConfirmationHandler.java
@@ -6,28 +6,27 @@ import java.util.stream.Stream;
 import de.ozgcloud.xta.client.model.XtaFile;
 import de.xoev.xdomea.AbgabeImportBestaetigen0402;
 import de.xoev.xdomea.ErfolgOderMisserfolgAbgabeType;
-import lombok.Getter;
 import lombok.RequiredArgsConstructor;
 
 public class XtaImportConfirmationHandler {
 
-	@Getter
 	private final AbgabeImportBestaetigen0402 importConfirmation;
 
-	public static XtaImportConfirmationHandler initFrom(XtaFile file) {
+	public static XtaImportConfirmationHandler createFrom(XtaFile file) {
 		return new XtaImportConfirmationHandler(file);
 	}
 
 	private XtaImportConfirmationHandler(XtaFile file) {
-		importConfirmation = XtaFileXmlUtils.read(file, AbgabeImportBestaetigen0402.class);
+		importConfirmation = XtaFileReader.createAbgabeImportBestaetigen0402Reader().read(file);
+
 	}
 
-	public Stream<XtaAbgabeHandler> getAbgaben() {
-		return importConfirmation.getAbgegebenesObjekt().stream().map(XtaAbgabeHandler::new);
+	public Stream<XtaAbgabeAdapter> getAbgaben() {
+		return importConfirmation.getAbgegebenesObjekt().stream().map(XtaAbgabeAdapter::new);
 	}
 
 	@RequiredArgsConstructor
-	public static class XtaAbgabeHandler {
+	public static class XtaAbgabeAdapter {
 
 		private final ErfolgOderMisserfolgAbgabeType abgabeType;
 
@@ -35,7 +34,7 @@ public class XtaImportConfirmationHandler {
 			return abgabeType.getIDSGO();
 		}
 
-		public boolean isSuccessfullyDone() {
+		public boolean isSuccessful() {
 			return abgabeType.isErfolgreich();
 		}
 
diff --git a/archive-manager-server/src/main/java/de/ozgcloud/archive/quittung/QuittungService.java b/archive-manager-server/src/main/java/de/ozgcloud/archive/quittung/QuittungService.java
index 0b34860..f80e00d 100644
--- a/archive-manager-server/src/main/java/de/ozgcloud/archive/quittung/QuittungService.java
+++ b/archive-manager-server/src/main/java/de/ozgcloud/archive/quittung/QuittungService.java
@@ -12,7 +12,7 @@ import de.ozgcloud.archive.common.command.CommandService;
 import de.ozgcloud.archive.common.xta.XtaFileHelper;
 import de.ozgcloud.archive.common.xta.XtaFileType;
 import de.ozgcloud.archive.common.xta.XtaFileXmlUtils;
-import de.ozgcloud.archive.common.xta.XtaImportConfirmationHandler.XtaAbgabeHandler;
+import de.ozgcloud.archive.common.xta.XtaImportConfirmationHandler.XtaAbgabeAdapter;
 import de.ozgcloud.archive.common.xta.XtaService;
 import de.ozgcloud.command.Command;
 import de.ozgcloud.command.CommandExecutedEvent;
@@ -48,7 +48,7 @@ class QuittungService {
 		return XtaFileXmlUtils.isType(xtaFile, XtaFileType.IMPORT_CONFIRMATION);
 	}
 
-	void handleAbgabe(XtaAbgabeHandler abgabeHandler) {
+	void handleAbgabe(XtaAbgabeAdapter abgabeHandler) {
 		var vorgangId = abgabeHandler.getVorgangId();
 		var pendingCommands = findPendingArchiveVorgangCommands(vorgangId);
 
@@ -63,11 +63,11 @@ class QuittungService {
 		return commandService.findPending(vorgangId, CommandOrder.ARCHIVE_VORGANG).toList();
 	}
 
-	void evaluateAbgabe(XtaAbgabeHandler abgabeHandler, List<ArchiveManagerCommand> pendingCommands) {
+	void evaluateAbgabe(XtaAbgabeAdapter abgabeHandler, List<ArchiveManagerCommand> pendingCommands) {
 		if (pendingCommands.size() > 1) {
 			LOG.warn("Multiple pending commands found for vorgang: %s.", abgabeHandler.getVorgangId());
 		}
-		if (abgabeHandler.isSuccessfullyDone()) {
+		if (abgabeHandler.isSuccessful()) {
 			pendingCommands.forEach(this::publishCommandExecutedEvent);
 		} else {
 			pendingCommands.forEach(command -> publishCommandFailedEvent(abgabeHandler, command));
@@ -78,7 +78,7 @@ class QuittungService {
 		eventPublisher.publishEvent(new CommandExecutedEvent(pendingCommand));
 	}
 
-	void publishCommandFailedEvent(XtaAbgabeHandler contentHandler, Command pendingCommand) {
+	void publishCommandFailedEvent(XtaAbgabeAdapter contentHandler, Command pendingCommand) {
 		eventPublisher.publishEvent(new CommandFailedEvent(pendingCommand.getId(), contentHandler.getFehlermeldung()));
 	}
 }
diff --git a/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileHelperTest.java b/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileHelperTest.java
index f3da5de..5485f56 100644
--- a/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileHelperTest.java
+++ b/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileHelperTest.java
@@ -7,9 +7,6 @@ import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;
 import org.mockito.InjectMocks;
 
-import de.ozgcloud.archive.common.xta.XtaFileHelper;
-import de.ozgcloud.archive.common.xta.XtaImportConfirmationHandler;
-
 class XtaFileHelperTest {
 
 	@InjectMocks
diff --git a/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileReaderTest.java b/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileReaderTest.java
index 8cd4ed8..78fe015 100644
--- a/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileReaderTest.java
+++ b/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileReaderTest.java
@@ -18,12 +18,19 @@ import lombok.SneakyThrows;
 class XtaFileReaderTest {
 
 	@Nested
-	class TestConstruction {
+	class TestCreateAbgabeImportBestaetigen0402Reader {
+
+		@Test
+		void shouldCreateReader() {
+			var reader = XtaFileReader.createAbgabeImportBestaetigen0402Reader();
+
+			assertThat(reader).isExactlyInstanceOf(XtaFileReader.class);
+		}
 
 		@Test
 		@SneakyThrows
 		void shouldSetUnmarshaller() {
-			var reader = new XtaFileReader<AbgabeImportBestaetigen0402>(AbgabeImportBestaetigen0402.class);
+			var reader = XtaFileReader.createAbgabeImportBestaetigen0402Reader();
 
 			assertThat(ReflectionTestUtils.getField(reader, "unmarshaller", Unmarshaller.class)).usingRecursiveComparison()
 					.isEqualTo(JAXBContext.newInstance(AbgabeImportBestaetigen0402.class).createUnmarshaller());
@@ -36,7 +43,7 @@ class XtaFileReaderTest {
 		@Test
 		@SneakyThrows
 		void shouldReadContent() {
-			var reader = new XtaFileReader<AbgabeImportBestaetigen0402>(AbgabeImportBestaetigen0402.class);
+			var reader = XtaFileReader.createAbgabeImportBestaetigen0402Reader();
 
 			var abgabe = reader.read(XtaFileTestFactory.create(AbgabeImportBestaetigen0402TestFactory.FILE_PATH));
 
@@ -46,7 +53,7 @@ class XtaFileReaderTest {
 		@Test
 		@SneakyThrows
 		void shouldThrowTechnicalException() {
-			var reader = new XtaFileReader<AbgabeImportBestaetigen0402>(AbgabeImportBestaetigen0402.class);
+			var reader = XtaFileReader.createAbgabeImportBestaetigen0402Reader();
 			XtaFile unknownFile = XtaFileTestFactory.create();
 
 			assertThrows(TechnicalException.class, () -> reader.read(unknownFile));
diff --git a/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileXmlUtilsTest.java b/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileXmlUtilsTest.java
index e9cc657..9da78a0 100644
--- a/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileXmlUtilsTest.java
+++ b/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaFileXmlUtilsTest.java
@@ -11,8 +11,6 @@ import org.junit.jupiter.api.Test;
 import org.mockito.MockedStatic;
 import org.mockito.Mockito;
 
-import de.ozgcloud.archive.common.xta.XtaFileType;
-import de.ozgcloud.archive.common.xta.XtaFileXmlUtils;
 import de.ozgcloud.common.errorhandling.TechnicalException;
 
 class XtaFileXmlUtilsTest {
diff --git a/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaImportConfirmationHandlerTest.java b/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaImportConfirmationHandlerTest.java
index 66e462a..7670320 100644
--- a/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaImportConfirmationHandlerTest.java
+++ b/archive-manager-server/src/test/java/de/ozgcloud/archive/common/xta/XtaImportConfirmationHandlerTest.java
@@ -2,18 +2,18 @@ package de.ozgcloud.archive.common.xta;
 
 import static org.assertj.core.api.Assertions.*;
 import static org.mockito.ArgumentMatchers.*;
+import static org.mockito.Mockito.*;
 
-import java.util.function.Consumer;
-
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.DisplayName;
 import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;
+import org.mockito.Mock;
 import org.mockito.MockedStatic;
-import org.mockito.Mockito;
 
-import de.ozgcloud.archive.common.xta.XtaFileXmlUtils;
-import de.ozgcloud.archive.common.xta.XtaImportConfirmationHandler;
-import de.ozgcloud.archive.common.xta.XtaImportConfirmationHandler.XtaAbgabeHandler;
+import de.ozgcloud.archive.common.xta.XtaImportConfirmationHandler.XtaAbgabeAdapter;
+import de.ozgcloud.common.test.ReflectionTestUtils;
 import de.ozgcloud.xta.client.model.XtaFile;
 import de.xoev.xdomea.AbgabeImportBestaetigen0402;
 
@@ -26,63 +26,93 @@ class XtaImportConfirmationHandlerTest {
 		private final AbgabeImportBestaetigen0402 importConfirmation = AbgabeImportBestaetigen0402TestFactory.create();
 		private final XtaFile file = XtaFileTestFactory.create(AbgabeImportBestaetigen0402TestFactory.FILE_PATH);
 
-		@Test
-		void shouldReadFileContent() {
-			mockStatic(XtaFileXmlUtils.class, mock -> {
-				mock.when(() -> XtaFileXmlUtils.read(any(), any())).thenReturn(importConfirmation);
-
-				var handler = initImportConfirmationHandler();
-
-				assertThat(handler.getImportConfirmation()).isEqualTo(importConfirmation);
-			});
-		}
+		@Mock
+		private XtaFileReader<AbgabeImportBestaetigen0402> reader;
 
-		@Test
-		void shouldReturnAbgabenAsHandler() {
-			var handler = initImportConfirmationHandler();
+		@Nested
+		class TestCreateFrom {
 
-			assertThat(handler.getAbgaben()).hasSize(1);
-			assertThat(handler.getAbgaben().findFirst()).isPresent().get().isInstanceOf(XtaAbgabeHandler.class);
-		}
+			@SuppressWarnings("rawtypes")
+			private MockedStatic<XtaFileReader> fileReaderStaticMock;
 
-		private <T> void mockStatic(Class<T> clazz, Consumer<MockedStatic<T>> mockConfigurer) {
-			try (var staticMock = Mockito.mockStatic(clazz, Mockito.CALLS_REAL_METHODS)) {
-				mockConfigurer.accept(staticMock);
+			@BeforeEach
+			void initMock() {
+				fileReaderStaticMock = mockStatic(XtaFileReader.class);
+				fileReaderStaticMock.when(XtaFileReader::createAbgabeImportBestaetigen0402Reader).thenReturn(reader);
 			}
-		}
 
-		@DisplayName("Xta abgabe handler")
-		@Nested
-		class TestXtaAbgabeHandler {
+			@AfterEach
+			void closeMock() {
+				fileReaderStaticMock.close();
+			}
 
 			@Test
-			void shouldReturnVorgangId() {
-				var vorgangId = initAbgabeHandler().getVorgangId();
+			void shouldReadFileContent() {
+				XtaImportConfirmationHandler.createFrom(file);
 
-				assertThat(vorgangId).isEqualTo(AbgabeImportBestaetigen0402TestFactory.VORGANG_ID);
+				verify(reader).read(file);
 			}
 
 			@Test
-			void shouldReturnIsSucessfullyDone() {
-				var isSuccessfullyDone = initAbgabeHandler().isSuccessfullyDone();
+			void shouldSetImportConfirmation() {
+				when(reader.read(any())).thenReturn(importConfirmation);
+
+				var confiHandler = XtaImportConfirmationHandler.createFrom(file);
+
+				assertThat(ReflectionTestUtils.getField(confiHandler, "importConfirmation", AbgabeImportBestaetigen0402.class))
+						.usingRecursiveComparison().isEqualTo(importConfirmation);
 
-				assertThat(isSuccessfullyDone).isEqualTo(AbgabeImportBestaetigen0402TestFactory.ERFOLGREICH);
 			}
 
+		}
+
+		@Nested
+		class TestGetAbgaben {
+			private final XtaFile file = XtaFileTestFactory.create(AbgabeImportBestaetigen0402TestFactory.FILE_PATH);
+
 			@Test
-			void shouldReturnErrorMessage() {
-				var errorMessage = initAbgabeHandler().getFehlermeldung();
+			void shouldReturnAbgabenAsHandler() {
+				var handler = XtaImportConfirmationHandler.createFrom(file);
 
-				assertThat(errorMessage).isEqualTo(AbgabeImportBestaetigen0402TestFactory.FEHLERMELDUNG);
+				assertThat(handler.getAbgaben()).hasSize(1);
+				assertThat(handler.getAbgaben().findFirst()).isPresent().get().isInstanceOf(XtaAbgabeAdapter.class);
 			}
+		}
+	}
 
-			private XtaAbgabeHandler initAbgabeHandler() {
-				return initImportConfirmationHandler().getAbgaben().findFirst().get();
-			}
+	@DisplayName("Xta abgabe handler")
+	@Nested
+	class TestXtaAbgabeAdapter {
+
+		private final XtaFile file = XtaFileTestFactory.create(AbgabeImportBestaetigen0402TestFactory.FILE_PATH);
+
+		@Test
+		void shouldReturnVorgangId() {
+			var vorgangId = initAbgabeHandler().getVorgangId();
+
+			assertThat(vorgangId).isEqualTo(AbgabeImportBestaetigen0402TestFactory.VORGANG_ID);
+		}
+
+		@Test
+		void shouldReturnIsSucessful() {
+			var isSuccessful = initAbgabeHandler().isSuccessful();
+
+			assertThat(isSuccessful).isEqualTo(AbgabeImportBestaetigen0402TestFactory.ERFOLGREICH);
+		}
+
+		@Test
+		void shouldReturnErrorMessage() {
+			var errorMessage = initAbgabeHandler().getFehlermeldung();
+
+			assertThat(errorMessage).isEqualTo(AbgabeImportBestaetigen0402TestFactory.FEHLERMELDUNG);
+		}
+
+		private XtaAbgabeAdapter initAbgabeHandler() {
+			return initImportConfirmationHandler().getAbgaben().findFirst().get();
 		}
 
 		private XtaImportConfirmationHandler initImportConfirmationHandler() {
-			return XtaImportConfirmationHandler.initFrom(file);
+			return XtaImportConfirmationHandler.createFrom(file);
 		}
 	}
 }
\ No newline at end of file
diff --git a/archive-manager-server/src/test/java/de/ozgcloud/archive/quittung/QuittungServiceTest.java b/archive-manager-server/src/test/java/de/ozgcloud/archive/quittung/QuittungServiceTest.java
index a0494f1..e2c6e9c 100644
--- a/archive-manager-server/src/test/java/de/ozgcloud/archive/quittung/QuittungServiceTest.java
+++ b/archive-manager-server/src/test/java/de/ozgcloud/archive/quittung/QuittungServiceTest.java
@@ -26,7 +26,7 @@ import de.ozgcloud.archive.common.command.CommandTestFactory;
 import de.ozgcloud.archive.common.xta.AbgabeImportBestaetigen0402TestFactory;
 import de.ozgcloud.archive.common.xta.XtaFileHelper;
 import de.ozgcloud.archive.common.xta.XtaImportConfirmationHandler;
-import de.ozgcloud.archive.common.xta.XtaImportConfirmationHandler.XtaAbgabeHandler;
+import de.ozgcloud.archive.common.xta.XtaImportConfirmationHandler.XtaAbgabeAdapter;
 import de.ozgcloud.archive.common.xta.XtaMessageTestFactory;
 import de.ozgcloud.archive.common.xta.XtaService;
 import de.ozgcloud.archive.vorgang.VorgangWithEingangTestFactory;
@@ -94,7 +94,7 @@ class QuittungServiceTest {
 		class TestOnImportConfirmation {
 
 			@Mock
-			private XtaAbgabeHandler abgabeHandler;
+			private XtaAbgabeAdapter abgabeHandler;
 
 			@BeforeEach
 			void mock() {
@@ -137,7 +137,7 @@ class QuittungServiceTest {
 	class TestHandleAbgabe {
 
 		@Mock
-		private XtaAbgabeHandler abgabeHandler;
+		private XtaAbgabeAdapter abgabeHandler;
 
 		@BeforeEach
 		void mock() {
@@ -197,7 +197,7 @@ class QuittungServiceTest {
 	class TestEvaluateConfirmation {
 
 		@Mock
-		private XtaAbgabeHandler abgabeHandler;
+		private XtaAbgabeAdapter abgabeHandler;
 
 		private final ArchiveManagerCommand command = CommandTestFactory.create();
 		private final List<ArchiveManagerCommand> commands = List.of(command, command);
@@ -206,12 +206,12 @@ class QuittungServiceTest {
 		void shouldCallIsSuccessfullyDone() {
 			service.evaluateAbgabe(abgabeHandler, commands);
 
-			verify(abgabeHandler).isSuccessfullyDone();
+			verify(abgabeHandler).isSuccessful();
 		}
 
 		@Test
 		void shouldCallPublishCommendExcecutedEvent() {
-			when(abgabeHandler.isSuccessfullyDone()).thenReturn(true);
+			when(abgabeHandler.isSuccessful()).thenReturn(true);
 
 			service.evaluateAbgabe(abgabeHandler, commands);
 
@@ -220,7 +220,7 @@ class QuittungServiceTest {
 
 		@Test
 		void shouldCallPublishCommandFailedEvent() {
-			when(abgabeHandler.isSuccessfullyDone()).thenReturn(false);
+			when(abgabeHandler.isSuccessful()).thenReturn(false);
 
 			service.evaluateAbgabe(abgabeHandler, commands);
 
-- 
GitLab