diff --git a/tests/unit/ui-store.test.ts b/tests/unit/ui-store.test.ts new file mode 100644 index 0000000..bd0bc51 --- /dev/null +++ b/tests/unit/ui-store.test.ts @@ -0,0 +1,28 @@ +import { beforeEach, describe, expect, it } from "vitest"; +import { useUiStore } from "@/stores/ui-store"; + +describe("ui store", () => { + beforeEach(() => { + useUiStore.setState({ + sidebarCollapsed: false, + commandOpen: false, + favorites: ["/files"], + recent: [], + density: "compact", + theme: "light", + }); + }); + + it("remembers routes without duplicates", () => { + useUiStore.getState().rememberRoute("/dashboard"); + useUiStore.getState().rememberRoute("/files"); + useUiStore.getState().rememberRoute("/dashboard"); + + expect(useUiStore.getState().recent.slice(0, 2)).toEqual(["/dashboard", "/files"]); + }); + + it("toggles favorites", () => { + useUiStore.getState().toggleFavorite("/files"); + expect(useUiStore.getState().favorites).not.toContain("/files"); + }); +});