diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandService.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandService.java index 30e31710620fb14d09c6802bc83386220fdf3876..8e8c8c39fe4877fd722df4e50f061f4ccd59e467 100644 --- a/api-lib-core/src/main/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandService.java +++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandService.java @@ -50,7 +50,7 @@ public class GrpcOzgCloudCommandService implements OzgCloudCommandService { } } } - if (command.getStatus() == OzgCloudCommandStatus.ERROR) { + if (hasErrorStatus(command)) { throw new TechnicalException("Command (id=%s) failed: %s".formatted(command.getId(), command.getErrorMessage())); } return command; @@ -64,4 +64,8 @@ public class GrpcOzgCloudCommandService implements OzgCloudCommandService { CommandServiceBlockingStub getCommandServiceStub() { return commandServiceStub.withInterceptors(new OzgCloudCallContextAttachingInterceptor(contextProvider)); } + + boolean hasErrorStatus(OzgCloudCommand command) { + return command.getStatus() == OzgCloudCommandStatus.ERROR; + } } diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandServiceTest.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandServiceTest.java index 5ca125ef30c8f2c944c54c4f45374c337b050d24..23eac1edfe6660a17e9db81aedbb550c67594d38 100644 --- a/api-lib-core/src/test/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandServiceTest.java +++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/common/command/grpc/GrpcOzgCloudCommandServiceTest.java @@ -119,4 +119,17 @@ class GrpcOzgCloudCommandServiceTest { } } + @Nested + class TestStatus { + + @Test + void shouldReturnTrueByError() { + var command = OzgCloudCommandTestFactory.createBuilder().status(OzgCloudCommandStatus.ERROR).build(); + + var result = service.hasErrorStatus(command); + + assertThat(result).isTrue(); + } + + } } \ No newline at end of file