32 lines
1.2 KiB
TypeScript
32 lines
1.2 KiB
TypeScript
import { assertEquals } from "../../test_deps.ts";
|
|
import { DenoKVSpacePrimitives } from "./deno_kv_space_primitives.ts";
|
|
|
|
Deno.test("deno_kv_space_primitives", async () => {
|
|
const tempFile = await Deno.makeTempFile({ suffix: ".db" });
|
|
const spacePrimitives = new DenoKVSpacePrimitives();
|
|
await spacePrimitives.init(tempFile);
|
|
await spacePrimitives.writeFile("test.txt", new TextEncoder().encode("test"));
|
|
let result = await spacePrimitives.readFile("test.txt");
|
|
assertEquals(result.data, new TextEncoder().encode("test"));
|
|
let listing = await spacePrimitives.fetchFileList();
|
|
assertEquals(listing.length, 1);
|
|
await spacePrimitives.writeFile(
|
|
"test.txt",
|
|
new TextEncoder().encode("test2"),
|
|
);
|
|
result = await spacePrimitives.readFile("test.txt");
|
|
assertEquals(result.data, new TextEncoder().encode("test2"));
|
|
await spacePrimitives.deleteFile("test.txt");
|
|
listing = await spacePrimitives.fetchFileList();
|
|
try {
|
|
await spacePrimitives.readFile("test.txt");
|
|
throw new Error("Should not be here");
|
|
} catch (e: any) {
|
|
assertEquals(e.message, "Not found");
|
|
}
|
|
assertEquals(listing.length, 0);
|
|
|
|
spacePrimitives.close();
|
|
await Deno.remove(tempFile);
|
|
});
|