mirror of
https://github.com/usatiuk/dhfs.git
synced 2025-10-28 12:37:48 +01:00
simple fuse create/read/write file test
This commit is contained in:
@@ -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()) {
|
||||
|
||||
@@ -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;
|
||||
|
||||
36
server/src/test/java/com/usatiuk/dhfs/fuse/DhfsFuseTest.java
Normal file
36
server/src/test/java/com/usatiuk/dhfs/fuse/DhfsFuseTest.java
Normal file
@@ -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);
|
||||
}
|
||||
}
|
||||
@@ -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;
|
||||
|
||||
@@ -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());
|
||||
|
||||
Reference in New Issue
Block a user