style: reformat navigation.test.ts with repo prettier config (#1899 #1900)

This commit is contained in:
2026-09-14 21:37:58 +08:00
parent b18e5964f6
commit 93b32eba51
+51 -51
View File
@@ -1,79 +1,79 @@
/**
* navigation config 测试
*/
import { describe, it, expect } from "vitest";
import { NAV_ITEMS, NAV_GROUPS } from "@/config/navigation";
import { describe, it, expect } from "vitest"
import { NAV_ITEMS, NAV_GROUPS } from "@/config/navigation"
describe("navigation config", () => {
describe("NAV_ITEMS", () => {
it("应该是一个非空数组", () => {
expect(Array.isArray(NAV_ITEMS)).toBe(true);
expect(NAV_ITEMS.length).toBeGreaterThan(0);
});
expect(Array.isArray(NAV_ITEMS)).toBe(true)
expect(NAV_ITEMS.length).toBeGreaterThan(0)
})
it("每个导航项都有必需字段", () => {
NAV_ITEMS.forEach((item) => {
expect(item).toHaveProperty("key");
expect(item).toHaveProperty("label");
expect(item).toHaveProperty("path");
expect(item).toHaveProperty("icon");
expect(typeof item.key).toBe("string");
expect(typeof item.label).toBe("string");
expect(typeof item.path).toBe("string");
expect(item.path).toMatch(/^\/app/);
});
});
expect(item).toHaveProperty("key")
expect(item).toHaveProperty("label")
expect(item).toHaveProperty("path")
expect(item).toHaveProperty("icon")
expect(typeof item.key).toBe("string")
expect(typeof item.label).toBe("string")
expect(typeof item.path).toBe("string")
expect(item.path).toMatch(/^\/app/)
})
})
it("key 不重复", () => {
const keys = NAV_ITEMS.map((item) => item.key);
expect(new Set(keys).size).toBe(keys.length);
});
const keys = NAV_ITEMS.map((item) => item.key)
expect(new Set(keys).size).toBe(keys.length)
})
it("path 不重复", () => {
const paths = NAV_ITEMS.map((item) => item.path);
expect(new Set(paths).size).toBe(paths.length);
});
const paths = NAV_ITEMS.map((item) => item.path)
expect(new Set(paths).size).toBe(paths.length)
})
it("包含核心导航项", () => {
const keys = NAV_ITEMS.map((item) => item.key);
expect(keys).toContain("dashboard");
expect(keys).toContain("assets");
expect(keys).toContain("voices");
expect(keys).toContain("titles");
});
});
const keys = NAV_ITEMS.map((item) => item.key)
expect(keys).toContain("dashboard")
expect(keys).toContain("assets")
expect(keys).toContain("voices")
expect(keys).toContain("titles")
})
})
describe("NAV_GROUPS", () => {
it("应该是一个非空数组", () => {
expect(Array.isArray(NAV_GROUPS)).toBe(true);
expect(NAV_GROUPS.length).toBeGreaterThan(0);
});
expect(Array.isArray(NAV_GROUPS)).toBe(true)
expect(NAV_GROUPS.length).toBeGreaterThan(0)
})
it("每个分组都有 title 和 items", () => {
NAV_GROUPS.forEach((group) => {
expect(group).toHaveProperty("title");
expect(group).toHaveProperty("items");
expect(typeof group.title).toBe("string");
expect(Array.isArray(group.items)).toBe(true);
expect(group.items.length).toBeGreaterThan(0);
});
});
expect(group).toHaveProperty("title")
expect(group).toHaveProperty("items")
expect(typeof group.title).toBe("string")
expect(Array.isArray(group.items)).toBe(true)
expect(group.items.length).toBeGreaterThan(0)
})
})
it("分组中的每个导航项结构正确", () => {
NAV_GROUPS.forEach((group) => {
group.items.forEach((item) => {
expect(item).toHaveProperty("key");
expect(item).toHaveProperty("label");
expect(item).toHaveProperty("path");
expect(item).toHaveProperty("icon");
expect(item.path).toMatch(/^\/app/);
});
});
});
expect(item).toHaveProperty("key")
expect(item).toHaveProperty("label")
expect(item).toHaveProperty("path")
expect(item).toHaveProperty("icon")
expect(item.path).toMatch(/^\/app/)
})
})
})
it("分组标题不重复", () => {
const titles = NAV_GROUPS.map((g) => g.title);
expect(new Set(titles).size).toBe(titles.length);
});
});
});
const titles = NAV_GROUPS.map((g) => g.title)
expect(new Set(titles).size).toBe(titles.length)
})
})
})