feat: добавить Image Gateway с кешем Souin
- добавлена сборка Caddy с Souin, Otter и NutsDB - добавлена конфигурация dev, prod и test Docker Compose - настроено кеширование через Otter L1 и NutsDB L2 - добавлены e2e-тесты Bun для кеша, restart и purge - добавлена документация по запуску, API кеша и тестам
This commit is contained in:
29
tests/e2e/cache-prime.test.js
Normal file
29
tests/e2e/cache-prime.test.js
Normal file
@@ -0,0 +1,29 @@
|
||||
import { describe, expect, test } from "bun:test";
|
||||
import {
|
||||
expectHit,
|
||||
expectStored,
|
||||
listKeys,
|
||||
purgeAll,
|
||||
requestImage,
|
||||
waitForReady,
|
||||
} from "./helpers.js";
|
||||
|
||||
describe("cache prime", () => {
|
||||
test("stores responses in NutsDB and serves hot hits from Otter", async () => {
|
||||
await waitForReady();
|
||||
await purgeAll();
|
||||
|
||||
const miss = await requestImage(103);
|
||||
expect(miss.status).toBe(200);
|
||||
expectStored(miss.cacheStatus);
|
||||
|
||||
const hit = await requestImage(103);
|
||||
expect(hit.status).toBe(200);
|
||||
expectHit(hit.cacheStatus, "OTTER");
|
||||
|
||||
const keys = await listKeys();
|
||||
expect(keys.some((key) => key.includes("/unsafe/resize:fit:103"))).toBe(
|
||||
true,
|
||||
);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user