Files
kandev/apps/web/lib/state/store.test.ts
T
Carlos Florêncio b9eb6ae058 refactor(web): remove legacy settings migration (#1704)
* refactor(web): remove legacy settings migration

* fix(web): hydrate portable settings from boot state

* fix(web): preserve sidebar sync contracts

* fix(web): retain portable settings filters

* fix(web): retry sidebar settings writes

* fix(web): retain sidebar boot settings

* fix(websocket): avoid shutdown teardown leaks

* fix(boot): normalize sidebar task preferences

* fix(settings): preserve saved views during hydration

* fix(jira): avoid duplicate saved-view syncs

* fix(jira): preserve saved views on fetch failure

* fix(jira): retry saved-view hydration failures

* refactor(jira): simplify hydration request cleanup

* fix(websocket): close late clients after hub shutdown
2026-07-16 00:06:41 +01:00

32 lines
948 B
TypeScript

import { describe, expect, it } from "vitest";
import { createAppStore, type AppState } from "./store";
describe("createAppStore", () => {
it("retains sidebar boot settings after slice initialization", () => {
const store = createAppStore({
userSettings: {
sidebarViews: [
{
id: "server",
name: "Server",
filters: [],
sort: { key: "state", direction: "asc" },
group: "none",
collapsedGroups: [],
},
],
sidebarActiveViewId: "server",
sidebarTaskPrefs: {
pinnedTaskIds: ["task-1"],
orderedTaskIds: ["task-1"],
subtaskOrderByParentId: {},
},
loaded: true,
},
} as unknown as Partial<AppState>);
expect(store.getState().sidebarViews.activeViewId).toBe("server");
expect(store.getState().sidebarTaskPrefs.pinnedTaskIds).toEqual(["task-1"]);
});
});