18 lines
777 B
TypeScript
Vendored
18 lines
777 B
TypeScript
Vendored
import assert from "node:assert/strict";
|
|
import { test } from "vitest";
|
|
import { buildDatabaseTreeNodes, sortSidebarNames } from "../../apps/desktop/src/lib/database/databaseTree.ts";
|
|
|
|
test("数据库节点按自然名称排序", () => {
|
|
const nodes = buildDatabaseTreeNodes("conn-1", [{ name: "db10" }, { name: "db2" }, { name: "campaign_data" }, { name: "cms" }, { name: "mk_campaign" }]);
|
|
|
|
assert.deepEqual(
|
|
nodes.map((node) => node.database),
|
|
["campaign_data", "cms", "db2", "db10", "mk_campaign"],
|
|
);
|
|
assert.equal(nodes.find((node) => node.database === "mk_campaign")?.id, "conn-1:mk_campaign");
|
|
});
|
|
|
|
test("sidebar name sorting uses numeric-aware ordering", () => {
|
|
assert.deepEqual(sortSidebarNames(["db10", "db2", "db1"]), ["db1", "db2", "db10"]);
|
|
});
|