mirror of
https://github.com/bknd-io/bknd/
synced 2026-08-02 08:06:00 +00:00
35 lines
1.1 KiB
TypeScript
35 lines
1.1 KiB
TypeScript
import { describe, beforeAll, vi, afterAll, spyOn } from "bun:test";
|
|
import { OpfsStorageAdapter } from "./OpfsStorageAdapter";
|
|
// @ts-ignore
|
|
import { assetsPath } from "../../../__test__/helper";
|
|
import { adapterTestSuite } from "media/storage/adapters/adapter-test-suite";
|
|
import { bunTestRunner } from "adapter/bun/test";
|
|
import { MockFileSystemDirectoryHandle } from "adapter/browser/mock";
|
|
|
|
describe("OpfsStorageAdapter", async () => {
|
|
let mockRoot: MockFileSystemDirectoryHandle;
|
|
let testSuiteAdapter: OpfsStorageAdapter;
|
|
|
|
const _mock = spyOn(global, "navigator");
|
|
|
|
beforeAll(() => {
|
|
// mock navigator.storage.getDirectory()
|
|
mockRoot = new MockFileSystemDirectoryHandle("opfs-root");
|
|
const mockNavigator = {
|
|
storage: {
|
|
getDirectory: vi.fn().mockResolvedValue(mockRoot),
|
|
},
|
|
};
|
|
// @ts-ignore
|
|
_mock.mockReturnValue(mockNavigator);
|
|
testSuiteAdapter = new OpfsStorageAdapter();
|
|
});
|
|
|
|
afterAll(() => {
|
|
_mock.mockRestore();
|
|
});
|
|
|
|
const file = Bun.file(`${assetsPath}/image.png`);
|
|
await adapterTestSuite(bunTestRunner, () => testSuiteAdapter, file);
|
|
});
|