diff --git a/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/antragraum/AntragraumService.java b/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/antragraum/AntragraumService.java index 35e0f7ba82970b6cbfa268eba848a6e1eef3f734..315c455b75691aa841ccf8dec547d776ca800d73 100644 --- a/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/antragraum/AntragraumService.java +++ b/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/antragraum/AntragraumService.java @@ -34,7 +34,6 @@ import java.util.stream.Stream; import jakarta.annotation.PostConstruct; import org.apache.commons.collections.CollectionUtils; -import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; import org.opensaml.saml.saml2.core.Response; import org.springframework.beans.factory.annotation.Qualifier; @@ -175,12 +174,7 @@ public class AntragraumService { } public void getAttachmentContent(AttachmentFileRequest request, OutputStream outputStream) { - try { - verifyAccessToFile(request); - } catch (RuntimeException e) { - IOUtils.closeQuietly(outputStream); - throw e; - } + verifyAccessToFile(request); ozgCloudFileService.writeFileDataToStream(OzgCloudFileId.from(request.getFileId()), outputStream); } diff --git a/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/antragraum/AntragraumServiceTest.java b/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/antragraum/AntragraumServiceTest.java index aaeb23c758ac22f08d5f07a7d1b33f11698343a0..ffda45abc90ea43778a91908668c572f9f671ca3 100644 --- a/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/antragraum/AntragraumServiceTest.java +++ b/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/antragraum/AntragraumServiceTest.java @@ -13,15 +13,12 @@ import java.util.Optional; import java.util.UUID; import java.util.stream.Stream; -import org.apache.commons.io.IOUtils; -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.InjectMocks; import org.mockito.Mock; -import org.mockito.MockedStatic; import org.mockito.Spy; import org.opensaml.saml.saml2.core.Response; @@ -596,61 +593,23 @@ class AntragraumServiceTest { private final AttachmentFileRequest request = AttachmentFileRequestTestFactory.create(); - @Nested - class OnSuccessfullVerification { - - @BeforeEach - void mock() { - doNothing().when(service).verifyAccessToFile(request); - } - - @Test - void shouldCallVerifyAccessToFile() { - callGetAttachmentContent(); - - verify(service).verifyAccessToFile(request); - } - - @Test - void shouldCallOzgCloudFileServiceToWriteData() { - callGetAttachmentContent(); - - verify(ozgCloudFileService).writeFileDataToStream(OzgCloudFileId.from(AttachmentFileRequestTestFactory.FILE_ID), outputStream); - } - + @BeforeEach + void mock() { + doNothing().when(service).verifyAccessToFile(request); } - @Nested - class OnUnsuccessfullVerification { - - private MockedStatic<IOUtils> mockedIOUtils; - private RuntimeException exception; - - @BeforeEach - @SneakyThrows - void setUpMock() { - doThrow(exception = new RuntimeException()).when(service).verifyAccessToFile(request); - mockedIOUtils = mockStatic(IOUtils.class); - } + @Test + void shouldCallVerifyAccessToFile() { + callGetAttachmentContent(); - @AfterEach - void cleanUp() { - mockedIOUtils.close(); - } + verify(service).verifyAccessToFile(request); + } - @Test - void shouldClosePipedOutPutStream() { - try { - callGetAttachmentContent(); - } catch (RuntimeException e) { - } - mockedIOUtils.verify(() -> IOUtils.closeQuietly(outputStream)); - } + @Test + void shouldCallOzgCloudFileServiceToWriteData() { + callGetAttachmentContent(); - @Test - void shouldRethrowException() { - assertThatThrownBy(() -> callGetAttachmentContent()).isEqualTo(exception); - } + verify(ozgCloudFileService).writeFileDataToStream(OzgCloudFileId.from(AttachmentFileRequestTestFactory.FILE_ID), outputStream); } @SneakyThrows