diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/common/command/CommandService.java b/alfa-service/src/main/java/de/ozgcloud/alfa/common/command/CommandService.java
index 8de6fac23e711bd7bcb74cfaec4e6b45af612a41..da98c4e572fda1d5c7175040bd88eace508555f6 100644
--- a/alfa-service/src/main/java/de/ozgcloud/alfa/common/command/CommandService.java
+++ b/alfa-service/src/main/java/de/ozgcloud/alfa/common/command/CommandService.java
@@ -30,13 +30,14 @@ import java.util.stream.Stream;
 import jakarta.validation.Valid;
 
 import org.apache.commons.collections.MapUtils;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
 import de.ozgcloud.alfa.loeschanforderung.DeleteLoeschAnforderung;
 import lombok.NonNull;
+import lombok.RequiredArgsConstructor;
 
+@RequiredArgsConstructor
 @Validated
 @Service
 public class CommandService {
@@ -45,8 +46,7 @@ public class CommandService {
 	private static final int WAIT_TIME_MS = 500;
 	private static final int COMMAND_REQUEST_THRESHOLD_MILLIS = 10000;
 
-	@Autowired
-	private CommandRemoteService remoteService;
+	private final CommandRemoteService remoteService;
 
 	/**
 	 * @deprecated use {@link #createCommand(CreateCommand)} instead
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandServiceTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandServiceTest.java
index e3106a01059f98998feb3e4ca77ba1a7f3b688cf..2bf962ce6cb343babed90d058cbe4549f6acb1b5 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandServiceTest.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandServiceTest.java
@@ -310,7 +310,7 @@ class CommandServiceTest {
 		class OnFinishedCommand {
 
 			@Test
-			void shouldReturnDoneCommand() {
+			void shouldReturnFinishedCommand() {
 				var resultCommand = service.waitUntilDone(finishedCommand);
 
 				assertThat(resultCommand).isEqualTo(finishedCommand);
@@ -336,7 +336,7 @@ class CommandServiceTest {
 			void shouldReloadCommand() {
 				service.waitUntilDone(pendingCommand);
 
-				verify(service, times(1)).reloadCommand(pendingCommand.getId());
+				verify(service).reloadCommand(pendingCommand.getId());
 			}
 
 			@Test
@@ -366,7 +366,21 @@ class CommandServiceTest {
 			}
 
 			@Test
-			void shouldReloadOnceAndReturnPendingCommand() {
+			void shouldReloadPendingCommand() {
+				doReturn(pendingCommand).when(service).reloadCommand(pendingCommand.getId());
+
+				try (MockedStatic<Calendar> calendarMockedStatic = mockStatic(Calendar.class)) {
+					calendarMockedStatic.when(Calendar::getInstance).thenReturn(calendar);
+					when(calendar.getTimeInMillis()).thenReturn(0L, 0L, 15000L);
+
+					service.waitUntilDone(pendingCommand);
+
+					verify(service).reloadCommand(pendingCommand.getId());
+				}
+			}
+
+			@Test
+			void shouldReturnPendingCommandAfterReload() {
 				doReturn(pendingCommand).when(service).reloadCommand(pendingCommand.getId());
 
 				try (MockedStatic<Calendar> calendarMockedStatic = mockStatic(Calendar.class)) {
@@ -375,7 +389,6 @@ class CommandServiceTest {
 
 					var resultCommand = service.waitUntilDone(pendingCommand);
 
-					verify(service, times(1)).reloadCommand(pendingCommand.getId());
 					assertThat(resultCommand).isEqualTo(pendingCommand);
 				}
 			}
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandStatusTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandStatusTest.java
index 13112dfaca23175415def4661a0cdef27c5d92c1..f91dc7028af4ca954d1dfc9fae1e70affbdcc066 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandStatusTest.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandStatusTest.java
@@ -14,7 +14,7 @@ class CommandStatusTest {
 
 		@ParameterizedTest
 		@EnumSource(names = { "PENDING", "REVOKE_PENDING" })
-		public void shouldReturnTrue(CommandStatus status) {
+		void shouldReturnTrue(CommandStatus status) {
 			var istNotDone = status.isNotDone();
 
 			assertThat(istNotDone).isTrue();
@@ -23,7 +23,7 @@ class CommandStatusTest {
 
 		@ParameterizedTest
 		@EnumSource(names = { "PENDING", "REVOKE_PENDING" }, mode = Mode.EXCLUDE)
-		public void shouldReturnFalse(CommandStatus status) {
+		void shouldReturnFalse(CommandStatus status) {
 			var istNotDone = status.isNotDone();
 
 			assertThat(istNotDone).isFalse();
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandTest.java
index f36fbc385c6a22097ff93957c7702de5326cc9d1..c838d402226703a6133dc5f8a65b79e7d911373e 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandTest.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandTest.java
@@ -9,6 +9,7 @@ import org.junit.jupiter.api.Test;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.EnumSource;
 import org.junit.jupiter.params.provider.EnumSource.Mode;
+import org.junit.jupiter.params.provider.ValueSource;
 import org.mockito.Mock;
 
 import com.thedeanda.lorem.LoremIpsum;
@@ -18,10 +19,9 @@ class CommandTest {
 	@Nested
 	class TestIsFinishedSuccessfully {
 
-		@ParameterizedTest
-		@EnumSource(names = "FINISHED")
-		void shouldReturnTrue(CommandStatus commandStatus) {
-			var command = CommandTestFactory.createBuilder().status(commandStatus).build();
+		@Test
+		void shouldReturnTrue() {
+			var command = CommandTestFactory.createBuilder().status(CommandStatus.FINISHED).build();
 
 			var isDoneSuccessfully = command.isFinishedSuccessfully();
 
@@ -63,19 +63,20 @@ class CommandTest {
 		}
 
 		@Test
-		public void shouldCallIsNotDone() {
+		void shouldCallIsNotDone() {
 			command.isNotDone();
 
 			verify(commandStatus).isNotDone();
 		}
 
-		@Test
-		public void shouldReturnIsNotDone() {
-			when(commandStatus.isNotDone()).thenReturn(true);
+		@ParameterizedTest
+		@ValueSource(booleans = { true, false })
+		void shouldReturnIsNotDone(boolean isNotDone) {
+			when(commandStatus.isNotDone()).thenReturn(isNotDone);
 
-			var isNotDone = command.isNotDone();
+			var result = command.isNotDone();
 
-			assertThat(isNotDone).isTrue();
+			assertThat(result).isEqualTo(isNotDone);
 		}
 
 	}
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageServiceTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageServiceTest.java
index 0479bb9094ae757c30043f67097d58ef61744f36..ae7f2e55675bd0ee63bb76f7a1b175b3bec39534 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageServiceTest.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageServiceTest.java
@@ -272,13 +272,13 @@ class WiedervorlageServiceTest {
 
 		@Test
 		void shouldReturnDoneCommand() {
-			var errorCommand = CommandTestFactory.createBuilder().status(CommandStatus.ERROR).build();
+			var doneCommand = CommandTestFactory.createBuilder().status(CommandStatus.FINISHED).build();
 			var command = CommandTestFactory.create();
-			when(commandService.waitUntilDone(command)).thenReturn(errorCommand);
+			when(commandService.waitUntilDone(command)).thenReturn(doneCommand);
 
 			var result = service.updateNextFrist(command, VorgangHeaderTestFactory.ID);
 
-			assertThat(result).isEqualTo(errorCommand);
+			assertThat(result).isEqualTo(doneCommand);
 		}
 
 		@Nested