import { describe, expect, mock, test } from "bun:test"; mock.module("cloudflare:workers", () => ({ env: {}, waitUntil: () => undefined })); const { LruCache } = await import("./resolve-guard"); describe("LruCache", () => { test("evicts the least recently used entry instead of clearing", () => { const cache = new LruCache(2); cache.set("a", 1); cache.set("b", 2); expect(cache.get("a")).toBe(1); cache.set("c", 3); expect(cache.get("b")).toBeUndefined(); expect(cache.get("a")).toBe(1); expect(cache.get("c")).toBe(3); expect(cache.size).toBe(2); }); test("overwriting a key refreshes it without growing", () => { const cache = new LruCache(2); cache.set("a", 1); cache.set("b", 2); cache.set("a", 3); cache.set("c", 4); expect(cache.get("a")).toBe(3); expect(cache.get("b")).toBeUndefined(); }); });