diff --git a/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/FileService.java b/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/FileService.java index 862aba7b8a80bc95762e567a1ed0cf3c7f31f763..91dcc0d3ea23794565de280ac8bfd192dd2401db 100644 --- a/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/FileService.java +++ b/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/FileService.java @@ -30,13 +30,14 @@ import java.util.concurrent.CompletableFuture; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; +import de.ozgcloud.common.binaryfile.TempFileUtils; + @Service class FileService { @Async public CompletableFuture<File> saveToFile(InputStream inputStream) { - // TODO Auto-generated method stub - throw new UnsupportedOperationException("Unimplemented method 'saveToFile'"); + return CompletableFuture.completedFuture(TempFileUtils.writeTmpFile(inputStream)); } } diff --git a/forwarder/src/test/java/de/ozgcloud/eingang/forwarder/FileServiceTest.java b/forwarder/src/test/java/de/ozgcloud/eingang/forwarder/FileServiceTest.java new file mode 100644 index 0000000000000000000000000000000000000000..795bcf585f68978745ceea5a8603b58f56c48885 --- /dev/null +++ b/forwarder/src/test/java/de/ozgcloud/eingang/forwarder/FileServiceTest.java @@ -0,0 +1,39 @@ +package de.ozgcloud.eingang.forwarder; + +import static org.assertj.core.api.Assertions.*; + +import java.io.ByteArrayInputStream; +import java.nio.file.Files; + +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; +import org.mockito.Spy; + +import com.thedeanda.lorem.LoremIpsum; + +import lombok.SneakyThrows; + +class FileServiceTest { + + @Spy + private FileService service; + + @Nested + class TestSaveToFile { + + private final byte[] content = LoremIpsum.getInstance().getWords(100).getBytes(); + + @Test + @SneakyThrows + void shouldReturnFutureOfFile() { + try (var inputStream = new ByteArrayInputStream(content);) { + var fileFuture = service.saveToFile(inputStream); + + var fileContent = Files.readAllBytes(fileFuture.get().toPath()); + assertThat(fileContent).isEqualTo(content); + + } + } + + } +}