diff --git a/build.gradle.kts b/build.gradle.kts index ca022b6c..2bb26dba 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -57,7 +57,7 @@ dependencies { testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.10.0") testImplementation("org.apache.commons:commons-lang3:3.12.0") testImplementation("com.github.marschall:zipfilesystem-standalone:1.0.1") - testImplementation("com.github.marschall:memoryfilesystem:2.1.0") + testImplementation("com.github.marschall:memoryfilesystem:2.6.1") testImplementation("org.mockito:mockito-core:3.9.0") testImplementation("org.mockito:mockito-inline:3.9.0") testImplementation("org.mockito:mockito-junit-jupiter:3.9.0") diff --git a/src/test/java/org/carlspring/cloud/storage/s3fs/util/S3ClientMock.java b/src/test/java/org/carlspring/cloud/storage/s3fs/util/S3ClientMock.java index 7c0c17bb..489c6175 100644 --- a/src/test/java/org/carlspring/cloud/storage/s3fs/util/S3ClientMock.java +++ b/src/test/java/org/carlspring/cloud/storage/s3fs/util/S3ClientMock.java @@ -32,6 +32,7 @@ import java.nio.file.StandardCopyOption; import java.nio.file.attribute.BasicFileAttributes; import java.nio.file.attribute.FileAttribute; +import java.nio.file.attribute.PosixFileAttributeView; import java.nio.file.attribute.PosixFileAttributes; import java.nio.file.attribute.PosixFilePermission; import java.time.Instant; @@ -207,10 +208,22 @@ void addFile(final Path bucket, Path file = Files.createFile(bucket.resolve(fileName.replaceAll("/", "%2F")), attrs); + // This is needed for marschall/memoryfilesystem >= 2.6.1+ + PosixFileAttributeView fileAttributeView = file.getFileSystem().provider().getFileAttributeView(file, PosixFileAttributeView.class); + + Set perms = new HashSet<>(); + perms.add(PosixFilePermission.OWNER_WRITE); + perms.add(PosixFilePermission.OWNER_READ); + perms.add(PosixFilePermission.OWNER_EXECUTE); + + fileAttributeView.setPermissions(perms); + // /This is needed for marschall/memoryfilesystem >= 2.6.1+ + try (OutputStream outputStream = Files.newOutputStream(file)) { outputStream.write(content); } + } void addDirectory(final Path bucket,