diff --git a/server/src/main/java/com/usatiuk/dhfs/storage/fuse/DhfsFuse.java b/server/src/main/java/com/usatiuk/dhfs/storage/fuse/DhfsFuse.java index 3aa152ba..b0da55fa 100644 --- a/server/src/main/java/com/usatiuk/dhfs/storage/fuse/DhfsFuse.java +++ b/server/src/main/java/com/usatiuk/dhfs/storage/fuse/DhfsFuse.java @@ -46,7 +46,7 @@ public class DhfsFuse extends FuseStubFS { try { found = fileService.getDirEntry(path).await().indefinitely(); } catch (Exception e) { - Log.error(e); + Log.error("When accessing " + path, e); return -ErrorCodes.ENOENT(); } if (found.isEmpty()) { diff --git a/server/src/test/java/com/usatiuk/dhfs/files/DhfsFileServiceSimpleTest.java b/server/src/test/java/com/usatiuk/dhfs/files/DhfsFileServiceSimpleTest.java index b3645842..b1ba58a5 100644 --- a/server/src/test/java/com/usatiuk/dhfs/files/DhfsFileServiceSimpleTest.java +++ b/server/src/test/java/com/usatiuk/dhfs/files/DhfsFileServiceSimpleTest.java @@ -7,13 +7,22 @@ import com.usatiuk.dhfs.storage.files.service.DhfsFileService; import com.usatiuk.dhfs.storage.objects.jrepository.JObjectRepository; import com.usatiuk.dhfs.storage.objects.repository.ObjectRepository; import io.quarkus.test.junit.QuarkusTest; +import io.quarkus.test.junit.QuarkusTestProfile; +import io.quarkus.test.junit.TestProfile; import jakarta.inject.Inject; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import java.util.UUID; +class Profiles { + public static class DhfsFileServiceSimpleTestProfile implements QuarkusTestProfile { + } +} + + @QuarkusTest +@TestProfile(Profiles.DhfsFileServiceSimpleTestProfile.class) public class DhfsFileServiceSimpleTest extends SimpleFileRepoTest { @Inject DhfsFileService fileService; diff --git a/server/src/test/java/com/usatiuk/dhfs/fuse/DhfsFuseTest.java b/server/src/test/java/com/usatiuk/dhfs/fuse/DhfsFuseTest.java new file mode 100644 index 00000000..897bccf9 --- /dev/null +++ b/server/src/test/java/com/usatiuk/dhfs/fuse/DhfsFuseTest.java @@ -0,0 +1,36 @@ +package com.usatiuk.dhfs.fuse; + +import com.usatiuk.dhfs.storage.SimpleFileRepoTest; +import io.quarkus.test.junit.QuarkusTest; +import io.quarkus.test.junit.QuarkusTestProfile; +import io.quarkus.test.junit.TestProfile; +import org.eclipse.microprofile.config.inject.ConfigProperty; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; + +class Profiles { + public static class DhfsFuseTestProfile implements QuarkusTestProfile { + } +} + +@QuarkusTest +@TestProfile(Profiles.DhfsFuseTestProfile.class) +public class DhfsFuseTest extends SimpleFileRepoTest { + @ConfigProperty(name = "dhfs.fuse.root") + String root; + + @Test + void readWriteFileTest() throws IOException, InterruptedException { + byte[] testString = "test file thing".getBytes(); + Path testPath = Path.of(root).resolve("test1"); + + Assertions.assertDoesNotThrow(() -> Files.createFile(testPath)); + Assertions.assertDoesNotThrow(() -> Files.write(testPath, testString)); + Assertions.assertDoesNotThrow(() -> Files.readAllBytes(testPath)); + Assertions.assertArrayEquals(Files.readAllBytes(testPath), testString); + } +} diff --git a/server/src/test/java/com/usatiuk/dhfs/storage/DhfsObjectGrpcServiceTest.java b/server/src/test/java/com/usatiuk/dhfs/storage/DhfsObjectGrpcServiceTest.java index 82bcb8b2..14678614 100644 --- a/server/src/test/java/com/usatiuk/dhfs/storage/DhfsObjectGrpcServiceTest.java +++ b/server/src/test/java/com/usatiuk/dhfs/storage/DhfsObjectGrpcServiceTest.java @@ -4,14 +4,21 @@ import com.google.protobuf.ByteString; import com.usatiuk.dhfs.storage.objects.api.*; import io.quarkus.grpc.GrpcClient; import io.quarkus.test.junit.QuarkusTest; -import org.eclipse.microprofile.config.inject.ConfigProperty; +import io.quarkus.test.junit.QuarkusTestProfile; +import io.quarkus.test.junit.TestProfile; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import java.time.Duration; import java.util.List; +class Profiles { + public static class DhfsObjectGrpcServiceTestProfile implements QuarkusTestProfile { + } +} + @QuarkusTest +@TestProfile(Profiles.DhfsObjectGrpcServiceTestProfile.class) class DhfsObjectGrpcServiceTest extends SimpleFileRepoTest { @GrpcClient DhfsObjectGrpc dhfsObjectGrpc; diff --git a/server/src/test/java/com/usatiuk/dhfs/storage/SimpleFileRepoTest.java b/server/src/test/java/com/usatiuk/dhfs/storage/SimpleFileRepoTest.java index 70da72bb..cefae0e7 100644 --- a/server/src/test/java/com/usatiuk/dhfs/storage/SimpleFileRepoTest.java +++ b/server/src/test/java/com/usatiuk/dhfs/storage/SimpleFileRepoTest.java @@ -3,7 +3,6 @@ package com.usatiuk.dhfs.storage; import io.quarkus.test.junit.QuarkusTest; import org.eclipse.microprofile.config.inject.ConfigProperty; import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; import java.io.File; import java.nio.file.Path; @@ -22,11 +21,6 @@ public abstract class SimpleFileRepoTest { } } - @BeforeEach - void setup() { - purgeDirectory(Path.of(tempDirectory).toFile()); - } - @AfterEach void teardown() { purgeDirectory(Path.of(tempDirectory).toFile());