diff --git a/app/common/src/test/java/stirling/software/common/model/ApplicationPropertiesSaml2ResourceTest.java b/app/common/src/test/java/stirling/software/common/model/ApplicationPropertiesSaml2ResourceTest.java index 42368cd48c..ad6845d57c 100644 --- a/app/common/src/test/java/stirling/software/common/model/ApplicationPropertiesSaml2ResourceTest.java +++ b/app/common/src/test/java/stirling/software/common/model/ApplicationPropertiesSaml2ResourceTest.java @@ -9,7 +9,8 @@ import java.nio.file.Path; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; -import org.springframework.core.io.Resource; + +import stirling.software.common.model.io.Resource; @Disabled("TODO: Migration required - Spring Boot test framework not available in Quarkus") class ApplicationPropertiesSaml2ResourceTest { diff --git a/app/core/src/test/java/stirling/software/SPDF/Factories/ReplaceAndInvertColorFactoryTest.java b/app/core/src/test/java/stirling/software/SPDF/Factories/ReplaceAndInvertColorFactoryTest.java index 948e00c106..644717cd25 100644 --- a/app/core/src/test/java/stirling/software/SPDF/Factories/ReplaceAndInvertColorFactoryTest.java +++ b/app/core/src/test/java/stirling/software/SPDF/Factories/ReplaceAndInvertColorFactoryTest.java @@ -6,9 +6,9 @@ import static org.mockito.Mockito.when; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.springframework.web.multipart.MultipartFile; import stirling.software.SPDF.config.EndpointConfiguration; +import stirling.software.common.model.MultipartFile; import stirling.software.common.model.api.misc.HighContrastColorCombination; import stirling.software.common.model.api.misc.ReplaceAndInvert; import stirling.software.common.util.misc.ColorSpaceConversionStrategy; diff --git a/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/CbrUtilsTest.java b/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/CbrUtilsTest.java index 20a7ee39ce..3ef4a04a4a 100644 --- a/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/CbrUtilsTest.java +++ b/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/CbrUtilsTest.java @@ -4,16 +4,16 @@ import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; import org.junit.jupiter.api.Test; -import org.springframework.mock.web.MockMultipartFile; +import stirling.software.common.model.multipart.ByteArrayMultipartFile; import stirling.software.common.util.CbrUtils; class CbrUtilsTest { @Test void testIsCbrFile_ValidCbrFile() { - MockMultipartFile cbrFile = - new MockMultipartFile( + ByteArrayMultipartFile cbrFile = + new ByteArrayMultipartFile( "file", "test.cbr", "application/x-rar-compressed", @@ -24,8 +24,8 @@ class CbrUtilsTest { @Test void testIsCbrFile_ValidRarFile() { - MockMultipartFile rarFile = - new MockMultipartFile( + ByteArrayMultipartFile rarFile = + new ByteArrayMultipartFile( "file", "test.rar", "application/x-rar-compressed", @@ -36,16 +36,17 @@ class CbrUtilsTest { @Test void testIsCbrFile_InvalidFile() { - MockMultipartFile textFile = - new MockMultipartFile("file", "test.txt", "text/plain", "test content".getBytes()); + ByteArrayMultipartFile textFile = + new ByteArrayMultipartFile( + "file", "test.txt", "text/plain", "test content".getBytes()); assertFalse(CbrUtils.isCbrFile(textFile)); } @Test void testIsCbrFile_NoFilename() { - MockMultipartFile noNameFile = - new MockMultipartFile( + ByteArrayMultipartFile noNameFile = + new ByteArrayMultipartFile( "file", null, "application/x-rar-compressed", "test content".getBytes()); assertFalse(CbrUtils.isCbrFile(noNameFile)); @@ -53,8 +54,8 @@ class CbrUtilsTest { @Test void testIsCbrFile_PdfFile() { - MockMultipartFile pdfFile = - new MockMultipartFile( + ByteArrayMultipartFile pdfFile = + new ByteArrayMultipartFile( "file", "document.pdf", "application/pdf", "pdf content".getBytes()); assertFalse(CbrUtils.isCbrFile(pdfFile)); @@ -62,16 +63,17 @@ class CbrUtilsTest { @Test void testIsCbrFile_JpegFile() { - MockMultipartFile jpegFile = - new MockMultipartFile("file", "image.jpg", "image/jpeg", "jpeg content".getBytes()); + ByteArrayMultipartFile jpegFile = + new ByteArrayMultipartFile( + "file", "image.jpg", "image/jpeg", "jpeg content".getBytes()); assertFalse(CbrUtils.isCbrFile(jpegFile)); } @Test void testIsCbrFile_ZipFile() { - MockMultipartFile zipFile = - new MockMultipartFile( + ByteArrayMultipartFile zipFile = + new ByteArrayMultipartFile( "file", "archive.zip", "application/zip", "zip content".getBytes()); assertFalse(CbrUtils.isCbrFile(zipFile)); @@ -79,8 +81,8 @@ class CbrUtilsTest { @Test void testIsCbrFile_MixedCaseExtension() { - MockMultipartFile cbrFile = - new MockMultipartFile( + ByteArrayMultipartFile cbrFile = + new ByteArrayMultipartFile( "file", "test.CBR", "application/x-rar-compressed", diff --git a/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/CbzUtilsTest.java b/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/CbzUtilsTest.java index ccee037372..8756b7d289 100644 --- a/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/CbzUtilsTest.java +++ b/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/CbzUtilsTest.java @@ -4,16 +4,16 @@ import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; import org.junit.jupiter.api.Test; -import org.springframework.mock.web.MockMultipartFile; +import stirling.software.common.model.multipart.ByteArrayMultipartFile; import stirling.software.common.util.CbzUtils; class CbzUtilsTest { @Test void testIsCbzFile_ValidCbzFile() { - MockMultipartFile cbzFile = - new MockMultipartFile( + ByteArrayMultipartFile cbzFile = + new ByteArrayMultipartFile( "file", "test.cbz", "application/zip", "test content".getBytes()); assertTrue(CbzUtils.isCbzFile(cbzFile)); @@ -21,8 +21,8 @@ class CbzUtilsTest { @Test void testIsCbzFile_ValidZipFile() { - MockMultipartFile zipFile = - new MockMultipartFile( + ByteArrayMultipartFile zipFile = + new ByteArrayMultipartFile( "file", "test.zip", "application/zip", "test content".getBytes()); assertTrue(CbzUtils.isCbzFile(zipFile)); @@ -30,24 +30,26 @@ class CbzUtilsTest { @Test void testIsCbzFile_InvalidFile() { - MockMultipartFile textFile = - new MockMultipartFile("file", "test.txt", "text/plain", "test content".getBytes()); + ByteArrayMultipartFile textFile = + new ByteArrayMultipartFile( + "file", "test.txt", "text/plain", "test content".getBytes()); assertFalse(CbzUtils.isCbzFile(textFile)); } @Test void testIsCbzFile_NoFilename() { - MockMultipartFile noNameFile = - new MockMultipartFile("file", null, "application/zip", "test content".getBytes()); + ByteArrayMultipartFile noNameFile = + new ByteArrayMultipartFile( + "file", null, "application/zip", "test content".getBytes()); assertFalse(CbzUtils.isCbzFile(noNameFile)); } @Test void testIsCbzFile_PdfFile() { - MockMultipartFile pdfFile = - new MockMultipartFile( + ByteArrayMultipartFile pdfFile = + new ByteArrayMultipartFile( "file", "document.pdf", "application/pdf", "pdf content".getBytes()); assertFalse(CbzUtils.isCbzFile(pdfFile)); @@ -55,16 +57,17 @@ class CbzUtilsTest { @Test void testIsCbzFile_JpegFile() { - MockMultipartFile jpegFile = - new MockMultipartFile("file", "image.jpg", "image/jpeg", "jpeg content".getBytes()); + ByteArrayMultipartFile jpegFile = + new ByteArrayMultipartFile( + "file", "image.jpg", "image/jpeg", "jpeg content".getBytes()); assertFalse(CbzUtils.isCbzFile(jpegFile)); } @Test void testIsCbzFile_RarFile() { - MockMultipartFile rarFile = - new MockMultipartFile( + ByteArrayMultipartFile rarFile = + new ByteArrayMultipartFile( "file", "archive.rar", "application/x-rar-compressed", @@ -75,8 +78,8 @@ class CbzUtilsTest { @Test void testIsCbzFile_MixedCaseExtension() { - MockMultipartFile cbzFile = - new MockMultipartFile( + ByteArrayMultipartFile cbzFile = + new ByteArrayMultipartFile( "file", "test.CBZ", "application/zip", "test content".getBytes()); assertTrue(CbzUtils.isCbzFile(cbzFile)); diff --git a/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/ConvertPDFToHtmlTest.java b/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/ConvertPDFToHtmlTest.java index 4805dbaa40..c9b22b9213 100644 --- a/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/ConvertPDFToHtmlTest.java +++ b/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/ConvertPDFToHtmlTest.java @@ -7,10 +7,10 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import org.springframework.mock.web.MockMultipartFile; import stirling.software.common.configuration.RuntimePathConfig; import stirling.software.common.model.api.PDFFile; +import stirling.software.common.model.multipart.ByteArrayMultipartFile; import stirling.software.common.util.TempFileManager; @ExtendWith(MockitoExtension.class) @@ -29,8 +29,8 @@ class ConvertPDFToHtmlTest { @Test void processPdfToHTML_requestContainsFile() { PDFFile file = new PDFFile(); - MockMultipartFile pdfFile = - new MockMultipartFile( + ByteArrayMultipartFile pdfFile = + new ByteArrayMultipartFile( "fileInput", "doc.pdf", "application/pdf", "content".getBytes()); file.setFileInput(pdfFile); diff --git a/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/PdfToCbzUtilsTest.java b/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/PdfToCbzUtilsTest.java index 007bbdbb85..3d0e6cc8d2 100644 --- a/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/PdfToCbzUtilsTest.java +++ b/app/core/src/test/java/stirling/software/SPDF/controller/api/converters/PdfToCbzUtilsTest.java @@ -9,8 +9,8 @@ import org.junit.jupiter.api.Test; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; -import org.springframework.mock.web.MockMultipartFile; +import stirling.software.common.model.multipart.ByteArrayMultipartFile; import stirling.software.common.service.CustomPDFDocumentFactory; import stirling.software.common.util.PdfToCbzUtils; import stirling.software.common.util.TempFileManager; @@ -27,12 +27,12 @@ public class PdfToCbzUtilsTest { @Test public void testIsPdfFile() { - MockMultipartFile pdfFile = - new MockMultipartFile("test", "test.pdf", "application/pdf", new byte[10]); - MockMultipartFile nonPdfFile = - new MockMultipartFile("test", "test.txt", "text/plain", new byte[10]); - MockMultipartFile noNameFile = - new MockMultipartFile("test", null, "application/pdf", new byte[10]); + ByteArrayMultipartFile pdfFile = + new ByteArrayMultipartFile("test", "test.pdf", "application/pdf", new byte[10]); + ByteArrayMultipartFile nonPdfFile = + new ByteArrayMultipartFile("test", "test.txt", "text/plain", new byte[10]); + ByteArrayMultipartFile noNameFile = + new ByteArrayMultipartFile("test", null, "application/pdf", new byte[10]); Assertions.assertTrue(PdfToCbzUtils.isPdfFile(pdfFile)); Assertions.assertFalse(PdfToCbzUtils.isPdfFile(nonPdfFile)); @@ -52,8 +52,8 @@ public class PdfToCbzUtilsTest { @Test public void testConvertPdfToCbz_EmptyFile() { - MockMultipartFile emptyFile = - new MockMultipartFile("test", "test.pdf", "application/pdf", new byte[0]); + ByteArrayMultipartFile emptyFile = + new ByteArrayMultipartFile("test", "test.pdf", "application/pdf", new byte[0]); IllegalArgumentException exception = Assertions.assertThrows( @@ -66,8 +66,8 @@ public class PdfToCbzUtilsTest { @Test public void testConvertPdfToCbz_NonPdfFile() { - MockMultipartFile nonPdfFile = - new MockMultipartFile("test", "test.txt", "text/plain", new byte[10]); + ByteArrayMultipartFile nonPdfFile = + new ByteArrayMultipartFile("test", "test.txt", "text/plain", new byte[10]); IllegalArgumentException exception = Assertions.assertThrows( @@ -81,8 +81,8 @@ public class PdfToCbzUtilsTest { @Test public void testConvertPdfToCbz_ValidPdf() throws IOException { // Create a simple mock PDF - MockMultipartFile pdfFile = - new MockMultipartFile("test", "test.pdf", "application/pdf", new byte[100]); + ByteArrayMultipartFile pdfFile = + new ByteArrayMultipartFile("test", "test.pdf", "application/pdf", new byte[100]); // Mock the PDF document PDDocument mockDocument = Mockito.mock(PDDocument.class); diff --git a/app/core/src/test/java/stirling/software/SPDF/model/api/misc/ScannerEffectRequestTest.java b/app/core/src/test/java/stirling/software/SPDF/model/api/misc/ScannerEffectRequestTest.java index be9c3ea61f..1c7456ad1c 100644 --- a/app/core/src/test/java/stirling/software/SPDF/model/api/misc/ScannerEffectRequestTest.java +++ b/app/core/src/test/java/stirling/software/SPDF/model/api/misc/ScannerEffectRequestTest.java @@ -8,13 +8,14 @@ import java.util.stream.Collectors; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; -import org.springframework.mock.web.MockMultipartFile; import jakarta.validation.ConstraintViolation; import jakarta.validation.Validation; import jakarta.validation.Validator; import jakarta.validation.ValidatorFactory; +import stirling.software.common.model.multipart.ByteArrayMultipartFile; + class ScannerEffectRequestTest { private static Validator validator; @@ -49,7 +50,7 @@ class ScannerEffectRequestTest { void fileInput_present_noViolationForThatField() { ScannerEffectRequest req = new ScannerEffectRequest(); req.setFileInput( - new MockMultipartFile( + new ByteArrayMultipartFile( "fileInput", "test.pdf", "application/pdf", new byte[] {1, 2, 3})); Set> violations = validator.validate(req); diff --git a/app/core/src/test/java/stirling/software/SPDF/service/LanguageServiceBasicTest.java b/app/core/src/test/java/stirling/software/SPDF/service/LanguageServiceBasicTest.java index ddce2b3422..518993375d 100644 --- a/app/core/src/test/java/stirling/software/SPDF/service/LanguageServiceBasicTest.java +++ b/app/core/src/test/java/stirling/software/SPDF/service/LanguageServiceBasicTest.java @@ -10,10 +10,10 @@ import java.util.Set; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.springframework.core.io.Resource; import stirling.software.common.model.ApplicationProperties; import stirling.software.common.model.ApplicationProperties.Ui; +import stirling.software.common.model.io.Resource; class LanguageServiceBasicTest { diff --git a/app/core/src/test/java/stirling/software/SPDF/service/LanguageServiceTest.java b/app/core/src/test/java/stirling/software/SPDF/service/LanguageServiceTest.java index fcea7e3895..d98368b4ae 100644 --- a/app/core/src/test/java/stirling/software/SPDF/service/LanguageServiceTest.java +++ b/app/core/src/test/java/stirling/software/SPDF/service/LanguageServiceTest.java @@ -12,10 +12,10 @@ import java.util.Set; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.springframework.core.io.Resource; import stirling.software.common.model.ApplicationProperties; import stirling.software.common.model.ApplicationProperties.Ui; +import stirling.software.common.model.io.Resource; class LanguageServiceTest { diff --git a/app/core/src/test/java/stirling/software/SPDF/service/misc/ReplaceAndInvertColorServiceExtendedTest.java b/app/core/src/test/java/stirling/software/SPDF/service/misc/ReplaceAndInvertColorServiceExtendedTest.java index d39430224a..8ffe73595f 100644 --- a/app/core/src/test/java/stirling/software/SPDF/service/misc/ReplaceAndInvertColorServiceExtendedTest.java +++ b/app/core/src/test/java/stirling/software/SPDF/service/misc/ReplaceAndInvertColorServiceExtendedTest.java @@ -10,12 +10,12 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import org.springframework.core.io.InputStreamResource; -import org.springframework.web.multipart.MultipartFile; import stirling.software.SPDF.Factories.ReplaceAndInvertColorFactory; +import stirling.software.common.model.MultipartFile; import stirling.software.common.model.api.misc.HighContrastColorCombination; import stirling.software.common.model.api.misc.ReplaceAndInvert; +import stirling.software.common.model.io.InputStreamResource; import stirling.software.common.util.misc.ReplaceAndInvertColorStrategy; @ExtendWith(MockitoExtension.class) diff --git a/app/core/src/test/java/stirling/software/SPDF/service/misc/ReplaceAndInvertColorServiceTest.java b/app/core/src/test/java/stirling/software/SPDF/service/misc/ReplaceAndInvertColorServiceTest.java index a668eb9f1f..00ffcc1217 100644 --- a/app/core/src/test/java/stirling/software/SPDF/service/misc/ReplaceAndInvertColorServiceTest.java +++ b/app/core/src/test/java/stirling/software/SPDF/service/misc/ReplaceAndInvertColorServiceTest.java @@ -10,12 +10,12 @@ import org.junit.jupiter.api.Test; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.MockitoAnnotations; -import org.springframework.core.io.InputStreamResource; -import org.springframework.web.multipart.MultipartFile; import stirling.software.SPDF.Factories.ReplaceAndInvertColorFactory; +import stirling.software.common.model.MultipartFile; import stirling.software.common.model.api.misc.HighContrastColorCombination; import stirling.software.common.model.api.misc.ReplaceAndInvert; +import stirling.software.common.model.io.InputStreamResource; import stirling.software.common.util.misc.ReplaceAndInvertColorStrategy; class ReplaceAndInvertColorServiceTest { diff --git a/app/core/src/test/java/stirling/software/SPDF/service/pdfjson/PdfLazyLoadingServiceTest.java b/app/core/src/test/java/stirling/software/SPDF/service/pdfjson/PdfLazyLoadingServiceTest.java index e5a6d2b3f7..4825b1e407 100644 --- a/app/core/src/test/java/stirling/software/SPDF/service/pdfjson/PdfLazyLoadingServiceTest.java +++ b/app/core/src/test/java/stirling/software/SPDF/service/pdfjson/PdfLazyLoadingServiceTest.java @@ -14,9 +14,9 @@ import java.util.Map; import org.apache.pdfbox.pdmodel.font.PDFont; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.springframework.web.multipart.MultipartFile; import stirling.software.SPDF.model.json.PdfJsonFont; +import stirling.software.common.model.MultipartFile; import stirling.software.common.service.CustomPDFDocumentFactory; import stirling.software.common.service.TaskManager; diff --git a/app/proprietary/src/test/java/stirling/software/proprietary/cluster/s3/S3VendorComprehensiveTest.java b/app/proprietary/src/test/java/stirling/software/proprietary/cluster/s3/S3VendorComprehensiveTest.java index 699ab5dd80..9bd7c746fa 100644 --- a/app/proprietary/src/test/java/stirling/software/proprietary/cluster/s3/S3VendorComprehensiveTest.java +++ b/app/proprietary/src/test/java/stirling/software/proprietary/cluster/s3/S3VendorComprehensiveTest.java @@ -20,10 +20,10 @@ import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.condition.EnabledIfEnvironmentVariable; -import org.springframework.mock.web.MockMultipartFile; import stirling.software.common.cluster.FileStore; import stirling.software.common.model.ApplicationProperties; +import stirling.software.common.model.multipart.ByteArrayMultipartFile; import stirling.software.proprietary.security.model.User; import stirling.software.proprietary.storage.provider.S3StorageProvider; import stirling.software.proprietary.storage.provider.StoredObject; @@ -132,7 +132,8 @@ class S3VendorComprehensiveTest { @Test void provider_store_thenLoad_matchesBytes() throws IOException { byte[] payload = ("provider-roundtrip-" + vendorLabel).getBytes(StandardCharsets.UTF_8); - MockMultipartFile file = new MockMultipartFile("file", "doc.txt", "text/plain", payload); + ByteArrayMultipartFile file = + new ByteArrayMultipartFile("file", "doc.txt", "text/plain", payload); StoredObject obj = provider.store(owner, file); track(obj.getStorageKey()); @@ -146,7 +147,8 @@ class S3VendorComprehensiveTest { @Test void provider_delete_removesObject() throws IOException { byte[] payload = "delete-me".getBytes(StandardCharsets.UTF_8); - MockMultipartFile file = new MockMultipartFile("file", "x.txt", "text/plain", payload); + ByteArrayMultipartFile file = + new ByteArrayMultipartFile("file", "x.txt", "text/plain", payload); StoredObject obj = provider.store(owner, file); track(obj.getStorageKey()); @@ -165,7 +167,8 @@ class S3VendorComprehensiveTest { @Test void provider_presignedDownload_returnsBytesOverHttp() throws Exception { byte[] payload = "presign me".getBytes(StandardCharsets.UTF_8); - MockMultipartFile file = new MockMultipartFile("file", "p.txt", "text/plain", payload); + ByteArrayMultipartFile file = + new ByteArrayMultipartFile("file", "p.txt", "text/plain", payload); StoredObject obj = provider.store(owner, file); track(obj.getStorageKey()); @@ -185,8 +188,8 @@ class S3VendorComprehensiveTest { @Test void provider_store_zeroBytes_isAccepted() throws IOException { - MockMultipartFile empty = - new MockMultipartFile("file", "empty.txt", "text/plain", new byte[0]); + ByteArrayMultipartFile empty = + new ByteArrayMultipartFile("file", "empty.txt", "text/plain", new byte[0]); StoredObject obj = provider.store(owner, empty); track(obj.getStorageKey()); @@ -203,8 +206,8 @@ class S3VendorComprehensiveTest { // and the original unicode name lives on StoredObject.originalFilename. String unicodeName = "résumé-日本語-é.pdf"; byte[] payload = "u".getBytes(StandardCharsets.UTF_8); - MockMultipartFile file = - new MockMultipartFile("file", unicodeName, "application/pdf", payload); + ByteArrayMultipartFile file = + new ByteArrayMultipartFile("file", unicodeName, "application/pdf", payload); StoredObject obj = provider.store(owner, file); track(obj.getStorageKey()); @@ -238,8 +241,8 @@ class S3VendorComprehensiveTest { () -> { byte[] payload = ("concurrent-" + idx).getBytes(StandardCharsets.UTF_8); - MockMultipartFile f = - new MockMultipartFile( + ByteArrayMultipartFile f = + new ByteArrayMultipartFile( "file", "c-" + idx + ".txt", "text/plain", @@ -318,8 +321,8 @@ class S3VendorComprehensiveTest { void provider_store_4MBPayload_streams() throws IOException { byte[] payload = new byte[4 * 1024 * 1024]; java.util.Arrays.fill(payload, (byte) 0x42); - MockMultipartFile file = - new MockMultipartFile("file", "big.bin", "application/octet-stream", payload); + ByteArrayMultipartFile file = + new ByteArrayMultipartFile("file", "big.bin", "application/octet-stream", payload); StoredObject obj = provider.store(owner, file); track(obj.getStorageKey()); @@ -667,8 +670,8 @@ class S3VendorComprehensiveTest { void provider_signedDownloadUrl_attachmentDisposition_endsWithAttachmentHeader() throws Exception { byte[] payload = "attach me".getBytes(StandardCharsets.UTF_8); - MockMultipartFile file = - new MockMultipartFile("file", "report.pdf", "application/pdf", payload); + ByteArrayMultipartFile file = + new ByteArrayMultipartFile("file", "report.pdf", "application/pdf", payload); StoredObject obj = provider.store(owner, file); track(obj.getStorageKey()); @@ -693,8 +696,8 @@ class S3VendorComprehensiveTest { @Test void provider_signedDownloadUrl_inlineDisposition_endsWithInlineHeader() throws Exception { byte[] payload = "inline".getBytes(StandardCharsets.UTF_8); - MockMultipartFile file = - new MockMultipartFile("file", "preview.pdf", "application/pdf", payload); + ByteArrayMultipartFile file = + new ByteArrayMultipartFile("file", "preview.pdf", "application/pdf", payload); StoredObject obj = provider.store(owner, file); track(obj.getStorageKey()); diff --git a/app/proprietary/src/test/java/stirling/software/proprietary/storage/provider/S3StorageProviderTest.java b/app/proprietary/src/test/java/stirling/software/proprietary/storage/provider/S3StorageProviderTest.java index e3fde2cf47..5dfb746bf8 100644 --- a/app/proprietary/src/test/java/stirling/software/proprietary/storage/provider/S3StorageProviderTest.java +++ b/app/proprietary/src/test/java/stirling/software/proprietary/storage/provider/S3StorageProviderTest.java @@ -15,12 +15,12 @@ import java.util.Optional; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; -import org.springframework.core.io.Resource; -import org.springframework.mock.web.MockMultipartFile; import org.testcontainers.containers.MinIOContainer; import org.testcontainers.junit.jupiter.Container; import org.testcontainers.junit.jupiter.Testcontainers; +import stirling.software.common.model.io.Resource; +import stirling.software.common.model.multipart.ByteArrayMultipartFile; import stirling.software.proprietary.security.model.User; import software.amazon.awssdk.auth.credentials.AwsBasicCredentials; @@ -96,8 +96,8 @@ class S3StorageProviderTest { User owner = new User(); owner.setId(42L); byte[] content = "hello s3 round trip".getBytes(StandardCharsets.UTF_8); - MockMultipartFile file = - new MockMultipartFile("file", "sample.pdf", "application/pdf", content); + ByteArrayMultipartFile file = + new ByteArrayMultipartFile("file", "sample.pdf", "application/pdf", content); StoredObject stored = provider.store(owner, file); @@ -133,8 +133,8 @@ class S3StorageProviderTest { owner.setId(99L); String unicodeName = "résumé-日本語-é.pdf"; byte[] payload = "u".getBytes(StandardCharsets.UTF_8); - MockMultipartFile file = - new MockMultipartFile("file", unicodeName, "application/pdf", payload); + ByteArrayMultipartFile file = + new ByteArrayMultipartFile("file", unicodeName, "application/pdf", payload); StoredObject stored = provider.store(owner, file); @@ -151,8 +151,8 @@ class S3StorageProviderTest { void delete_removesObject() throws Exception { User owner = new User(); owner.setId(7L); - MockMultipartFile file = - new MockMultipartFile( + ByteArrayMultipartFile file = + new ByteArrayMultipartFile( "file", "todelete.bin", "application/octet-stream", new byte[] {1, 2, 3}); StoredObject stored = provider.store(owner, file); @@ -174,7 +174,8 @@ class S3StorageProviderTest { byte[] content = "presigned payload".getBytes(StandardCharsets.UTF_8); StoredObject stored = provider.store( - owner, new MockMultipartFile("file", "presign.txt", "text/plain", content)); + owner, + new ByteArrayMultipartFile("file", "presign.txt", "text/plain", content)); Optional signed = provider.signedDownloadUrl(stored.getStorageKey(), Duration.ofMinutes(2)); @@ -208,7 +209,7 @@ class S3StorageProviderTest { StoredObject stored = provider.store( owner, - new MockMultipartFile( + new ByteArrayMultipartFile( "file", "ttl.txt", "text/plain", @@ -227,7 +228,7 @@ class S3StorageProviderTest { StoredObject stored = provider.store( owner, - new MockMultipartFile( + new ByteArrayMultipartFile( "file", "stored-name.pdf", "application/pdf",