better-chatbot / src /app /api /storage /actions.test.ts
Bot
Initial commit for HF Spaces
05c5ed5
Raw
History Blame Contribute Delete
1.42 kB
import { beforeEach, describe, expect, it, vi } from "vitest";
vi.mock("server-only", () => ({}));
const importActions = async () => await import("./actions");
describe("checkStorageAction", () => {
beforeEach(() => {
vi.resetModules();
delete process.env.FILE_STORAGE_TYPE;
delete process.env.BLOB_READ_WRITE_TOKEN;
delete process.env.FILE_STORAGE_S3_BUCKET;
delete process.env.FILE_STORAGE_S3_REGION;
delete process.env.AWS_REGION;
});
it("invalid when vercel-blob missing token", async () => {
process.env.FILE_STORAGE_TYPE = "vercel-blob";
const { checkStorageAction } = await importActions();
const res = await checkStorageAction();
expect(res.isValid).toBe(false);
expect(res.error).toMatch(/BLOB_READ_WRITE_TOKEN/);
});
it("s3 missing config", async () => {
process.env.FILE_STORAGE_TYPE = "s3";
const { checkStorageAction } = await importActions();
const res = await checkStorageAction();
expect(res.isValid).toBe(false);
expect(res.error).toMatch(/Missing S3 configuration/);
});
it("s3 valid with required envs", async () => {
process.env.FILE_STORAGE_TYPE = "s3";
process.env.FILE_STORAGE_S3_BUCKET = "bucket";
process.env.FILE_STORAGE_S3_REGION = "us-east-1";
const { checkStorageAction } = await importActions();
const res = await checkStorageAction();
expect(res.isValid).toBe(true);
});
});