b9eb6ae058
* 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
32 lines
948 B
TypeScript
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"]);
|
|
});
|
|
});
|