import { describe, expect, it } from "vitest"; import { deriveActiveBookId } from "./App"; describe("deriveActiveBookId", () => { it("returns the current book across book-centered routes", () => { expect(deriveActiveBookId({ page: "book", bookId: "alpha" })).toBe("alpha"); expect(deriveActiveBookId({ page: "chapter", bookId: "beta", chapterNumber: 3 })).toBe("beta"); expect(deriveActiveBookId({ page: "truth", bookId: "gamma" })).toBe("gamma"); expect(deriveActiveBookId({ page: "analytics", bookId: "delta" })).toBe("delta"); }); it("returns undefined for non-book routes", () => { expect(deriveActiveBookId({ page: "dashboard" })).toBeUndefined(); expect(deriveActiveBookId({ page: "config" })).toBeUndefined(); expect(deriveActiveBookId({ page: "style" })).toBeUndefined(); }); });