mirror of
https://fastgit.cc/github.com/openclaw/openclaw
synced 2026-04-21 21:31:39 +08:00
81 lines
3.1 KiB
TypeScript
81 lines
3.1 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { createNodeTestShards } from "../../scripts/lib/ci-node-test-plan.mjs";
|
|
|
|
describe("scripts/lib/ci-node-test-plan.mjs", () => {
|
|
it("names the node shard checks as core test lanes", () => {
|
|
const shards = createNodeTestShards();
|
|
|
|
expect(shards).not.toHaveLength(0);
|
|
expect(shards.map((shard) => shard.checkName)).toEqual(
|
|
shards.map((shard) =>
|
|
shard.shardName.startsWith("core-unit-")
|
|
? `checks-node-core-${shard.shardName.slice("core-unit-".length)}`
|
|
: `checks-node-${shard.shardName}`,
|
|
),
|
|
);
|
|
});
|
|
|
|
it("keeps extension, bundled, contracts, and channels configs out of the core node lane", () => {
|
|
const configs = createNodeTestShards().flatMap((shard) => shard.configs);
|
|
|
|
expect(configs).not.toContain("test/vitest/vitest.channels.config.ts");
|
|
expect(configs).not.toContain("test/vitest/vitest.contracts.config.ts");
|
|
expect(configs).not.toContain("test/vitest/vitest.bundled.config.ts");
|
|
expect(configs).not.toContain("test/vitest/vitest.full-extensions.config.ts");
|
|
expect(configs).not.toContain("test/vitest/vitest.extension-telegram.config.ts");
|
|
});
|
|
|
|
it("marks only dist-dependent shards for built artifact restore", () => {
|
|
const requiresDistShardNames = createNodeTestShards()
|
|
.filter((shard) => shard.requiresDist)
|
|
.map((shard) => shard.shardName);
|
|
|
|
expect(requiresDistShardNames).toEqual([
|
|
"core-support-boundary",
|
|
"core-runtime",
|
|
"agentic-agents-plugins",
|
|
]);
|
|
});
|
|
|
|
it("splits the agentic lane into control-plane, commands, and agent/plugin shards", () => {
|
|
const shards = createNodeTestShards();
|
|
const controlPlaneShard = shards.find((shard) => shard.shardName === "agentic-control-plane");
|
|
const commandsShard = shards.find((shard) => shard.shardName === "agentic-commands");
|
|
const agentPluginShard = shards.find((shard) => shard.shardName === "agentic-agents-plugins");
|
|
|
|
expect(controlPlaneShard).toEqual({
|
|
checkName: "checks-node-agentic-control-plane",
|
|
shardName: "agentic-control-plane",
|
|
configs: [
|
|
"test/vitest/vitest.gateway-core.config.ts",
|
|
"test/vitest/vitest.gateway-client.config.ts",
|
|
"test/vitest/vitest.gateway-methods.config.ts",
|
|
"test/vitest/vitest.gateway-server.config.ts",
|
|
"test/vitest/vitest.daemon.config.ts",
|
|
],
|
|
requiresDist: false,
|
|
});
|
|
expect(commandsShard).toEqual({
|
|
checkName: "checks-node-agentic-commands",
|
|
shardName: "agentic-commands",
|
|
configs: [
|
|
"test/vitest/vitest.cli.config.ts",
|
|
"test/vitest/vitest.commands-light.config.ts",
|
|
"test/vitest/vitest.commands.config.ts",
|
|
],
|
|
requiresDist: false,
|
|
});
|
|
expect(agentPluginShard).toEqual({
|
|
checkName: "checks-node-agentic-agents-plugins",
|
|
shardName: "agentic-agents-plugins",
|
|
configs: [
|
|
"test/vitest/vitest.agents.config.ts",
|
|
"test/vitest/vitest.plugin-sdk-light.config.ts",
|
|
"test/vitest/vitest.plugin-sdk.config.ts",
|
|
"test/vitest/vitest.plugins.config.ts",
|
|
],
|
|
requiresDist: true,
|
|
});
|
|
});
|
|
});
|