mirror of
https://github.com/openclaw/openclaw.git
synced 2026-04-28 06:31:11 +00:00
test: split agents vitest shards
This commit is contained in:
parent
fe1c7fae99
commit
f64e4fd8cf
17 changed files with 125 additions and 14 deletions
|
|
@ -190,7 +190,12 @@ const SPLIT_NODE_SHARDS = new Map([
|
|||
},
|
||||
{
|
||||
shardName: "agentic-agents",
|
||||
configs: ["test/vitest/vitest.agents.config.ts"],
|
||||
configs: [
|
||||
"test/vitest/vitest.agents-core.config.ts",
|
||||
"test/vitest/vitest.agents-pi-embedded.config.ts",
|
||||
"test/vitest/vitest.agents-support.config.ts",
|
||||
"test/vitest/vitest.agents-tools.config.ts",
|
||||
],
|
||||
requiresDist: false,
|
||||
},
|
||||
{
|
||||
|
|
|
|||
|
|
@ -45,7 +45,10 @@ const FULL_SUITE_CONFIG_WEIGHT = new Map([
|
|||
["test/vitest/vitest.gateway-client.config.ts", 178],
|
||||
["test/vitest/vitest.gateway-methods.config.ts", 177],
|
||||
["test/vitest/vitest.commands.config.ts", 175],
|
||||
["test/vitest/vitest.agents.config.ts", 170],
|
||||
["test/vitest/vitest.agents-core.config.ts", 170],
|
||||
["test/vitest/vitest.agents-pi-embedded.config.ts", 169],
|
||||
["test/vitest/vitest.agents-support.config.ts", 168],
|
||||
["test/vitest/vitest.agents-tools.config.ts", 167],
|
||||
["test/vitest/vitest.extension-voice-call.config.ts", 169],
|
||||
["test/vitest/vitest.extensions.config.ts", 168],
|
||||
["test/vitest/vitest.extension-provider-openai.config.ts", 167],
|
||||
|
|
|
|||
|
|
@ -1,5 +1,9 @@
|
|||
import { vi } from "vitest";
|
||||
|
||||
vi.mock("./queue.js", () => ({
|
||||
clearSessionQueues: vi.fn(() => ({ followupCleared: 0, laneCleared: 0, keys: [] })),
|
||||
}));
|
||||
vi.mock("./queue.js", async () => {
|
||||
const actual = await vi.importActual<typeof import("./queue.js")>("./queue.js");
|
||||
return {
|
||||
...actual,
|
||||
clearSessionQueues: vi.fn(() => ({ followupCleared: 0, laneCleared: 0, keys: [] })),
|
||||
};
|
||||
});
|
||||
|
|
|
|||
|
|
@ -26,10 +26,14 @@ vi.mock("../group-activation.js", () => ({
|
|||
normalizeGroupActivation: (value: unknown) => value,
|
||||
}));
|
||||
|
||||
vi.mock("./queue.js", () => ({
|
||||
getFollowupQueueDepth: () => 0,
|
||||
resolveQueueSettings: () => ({ mode: "interrupt" }),
|
||||
}));
|
||||
vi.mock("./queue.js", async () => {
|
||||
const actual = await vi.importActual<typeof import("./queue.js")>("./queue.js");
|
||||
return {
|
||||
...actual,
|
||||
getFollowupQueueDepth: () => 0,
|
||||
resolveQueueSettings: () => ({ mode: "interrupt" }),
|
||||
};
|
||||
});
|
||||
|
||||
const { buildStatusReply } = await import("./commands-status.js");
|
||||
|
||||
|
|
|
|||
|
|
@ -171,7 +171,12 @@ describe("scripts/lib/ci-node-test-plan.mjs", () => {
|
|||
expect(agentShard).toEqual({
|
||||
checkName: "checks-node-agentic-agents",
|
||||
shardName: "agentic-agents",
|
||||
configs: ["test/vitest/vitest.agents.config.ts"],
|
||||
configs: [
|
||||
"test/vitest/vitest.agents-core.config.ts",
|
||||
"test/vitest/vitest.agents-pi-embedded.config.ts",
|
||||
"test/vitest/vitest.agents-support.config.ts",
|
||||
"test/vitest/vitest.agents-tools.config.ts",
|
||||
],
|
||||
requiresDist: false,
|
||||
});
|
||||
expect(pluginSdkShard).toEqual({
|
||||
|
|
|
|||
|
|
@ -1057,7 +1057,10 @@ describe("scripts/test-projects full-suite sharding", () => {
|
|||
"test/vitest/vitest.cli.config.ts",
|
||||
"test/vitest/vitest.commands-light.config.ts",
|
||||
"test/vitest/vitest.commands.config.ts",
|
||||
"test/vitest/vitest.agents.config.ts",
|
||||
"test/vitest/vitest.agents-core.config.ts",
|
||||
"test/vitest/vitest.agents-pi-embedded.config.ts",
|
||||
"test/vitest/vitest.agents-support.config.ts",
|
||||
"test/vitest/vitest.agents-tools.config.ts",
|
||||
"test/vitest/vitest.daemon.config.ts",
|
||||
"test/vitest/vitest.plugin-sdk-light.config.ts",
|
||||
"test/vitest/vitest.plugin-sdk.config.ts",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,10 @@
|
|||
import { afterEach, describe, expect, it } from "vitest";
|
||||
import { createPatternFileHelper } from "./helpers/pattern-file.js";
|
||||
import { normalizeConfigPath, normalizeConfigPaths } from "./helpers/vitest-config-paths.js";
|
||||
import { createAgentsCoreVitestConfig } from "./vitest/vitest.agents-core.config.ts";
|
||||
import { createAgentsPiEmbeddedVitestConfig } from "./vitest/vitest.agents-pi-embedded.config.ts";
|
||||
import { createAgentsSupportVitestConfig } from "./vitest/vitest.agents-support.config.ts";
|
||||
import { createAgentsToolsVitestConfig } from "./vitest/vitest.agents-tools.config.ts";
|
||||
import { createAgentsVitestConfig } from "./vitest/vitest.agents.config.ts";
|
||||
import bundledConfig from "./vitest/vitest.bundled.config.ts";
|
||||
import { createCommandsLightVitestConfig } from "./vitest/vitest.commands-light.config.ts";
|
||||
|
|
@ -45,6 +49,10 @@ describe("projects vitest config", () => {
|
|||
it("keeps root projects on their expected pool defaults", () => {
|
||||
expect(createGatewayVitestConfig().test.pool).toBe("threads");
|
||||
expect(createAgentsVitestConfig().test.pool).toBe("threads");
|
||||
expect(createAgentsCoreVitestConfig().test.pool).toBe("threads");
|
||||
expect(createAgentsPiEmbeddedVitestConfig().test.pool).toBe("threads");
|
||||
expect(createAgentsSupportVitestConfig().test.pool).toBe("threads");
|
||||
expect(createAgentsToolsVitestConfig().test.pool).toBe("threads");
|
||||
expect(createCommandsLightVitestConfig().test.pool).toBe("threads");
|
||||
expect(createCommandsVitestConfig().test.pool).toBe("threads");
|
||||
expect(createPluginSdkLightVitestConfig().test.pool).toBe("threads");
|
||||
|
|
|
|||
12
test/vitest/vitest.agents-core.config.ts
Normal file
12
test/vitest/vitest.agents-core.config.ts
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
import { agentsCoreTestPatterns } from "./vitest.agents-paths.mjs";
|
||||
import { createScopedVitestConfig } from "./vitest.scoped-config.ts";
|
||||
|
||||
export function createAgentsCoreVitestConfig(env?: Record<string, string | undefined>) {
|
||||
return createScopedVitestConfig(agentsCoreTestPatterns, {
|
||||
dir: "src/agents",
|
||||
env,
|
||||
name: "agents-core",
|
||||
});
|
||||
}
|
||||
|
||||
export default createAgentsCoreVitestConfig();
|
||||
14
test/vitest/vitest.agents-paths.mjs
Normal file
14
test/vitest/vitest.agents-paths.mjs
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
export const agentsAllTestPatterns = ["src/agents/**/*.test.ts"];
|
||||
|
||||
export const agentsCoreTestPatterns = ["src/agents/*.test.ts"];
|
||||
|
||||
export const agentsPiEmbeddedTestPatterns = ["src/agents/pi-embedded-runner/**/*.test.ts"];
|
||||
|
||||
export const agentsToolsTestPatterns = ["src/agents/tools/**/*.test.ts"];
|
||||
|
||||
export const agentsSupportTestPatterns = ["src/agents/*/**/*.test.ts"];
|
||||
|
||||
export const agentsSupportExcludePatterns = [
|
||||
"src/agents/pi-embedded-runner/**",
|
||||
"src/agents/tools/**",
|
||||
];
|
||||
12
test/vitest/vitest.agents-pi-embedded.config.ts
Normal file
12
test/vitest/vitest.agents-pi-embedded.config.ts
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
import { agentsPiEmbeddedTestPatterns } from "./vitest.agents-paths.mjs";
|
||||
import { createScopedVitestConfig } from "./vitest.scoped-config.ts";
|
||||
|
||||
export function createAgentsPiEmbeddedVitestConfig(env?: Record<string, string | undefined>) {
|
||||
return createScopedVitestConfig(agentsPiEmbeddedTestPatterns, {
|
||||
dir: "src/agents",
|
||||
env,
|
||||
name: "agents-pi-embedded",
|
||||
});
|
||||
}
|
||||
|
||||
export default createAgentsPiEmbeddedVitestConfig();
|
||||
13
test/vitest/vitest.agents-support.config.ts
Normal file
13
test/vitest/vitest.agents-support.config.ts
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
import { agentsSupportExcludePatterns, agentsSupportTestPatterns } from "./vitest.agents-paths.mjs";
|
||||
import { createScopedVitestConfig } from "./vitest.scoped-config.ts";
|
||||
|
||||
export function createAgentsSupportVitestConfig(env?: Record<string, string | undefined>) {
|
||||
return createScopedVitestConfig(agentsSupportTestPatterns, {
|
||||
dir: "src/agents",
|
||||
env,
|
||||
exclude: agentsSupportExcludePatterns,
|
||||
name: "agents-support",
|
||||
});
|
||||
}
|
||||
|
||||
export default createAgentsSupportVitestConfig();
|
||||
12
test/vitest/vitest.agents-tools.config.ts
Normal file
12
test/vitest/vitest.agents-tools.config.ts
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
import { agentsToolsTestPatterns } from "./vitest.agents-paths.mjs";
|
||||
import { createScopedVitestConfig } from "./vitest.scoped-config.ts";
|
||||
|
||||
export function createAgentsToolsVitestConfig(env?: Record<string, string | undefined>) {
|
||||
return createScopedVitestConfig(agentsToolsTestPatterns, {
|
||||
dir: "src/agents",
|
||||
env,
|
||||
name: "agents-tools",
|
||||
});
|
||||
}
|
||||
|
||||
export default createAgentsToolsVitestConfig();
|
||||
|
|
@ -1,7 +1,8 @@
|
|||
import { agentsAllTestPatterns } from "./vitest.agents-paths.mjs";
|
||||
import { createScopedVitestConfig } from "./vitest.scoped-config.ts";
|
||||
|
||||
export function createAgentsVitestConfig(env?: Record<string, string | undefined>) {
|
||||
return createScopedVitestConfig(["src/agents/**/*.test.ts"], {
|
||||
return createScopedVitestConfig(agentsAllTestPatterns, {
|
||||
dir: "src/agents",
|
||||
env,
|
||||
name: "agents",
|
||||
|
|
|
|||
|
|
@ -32,7 +32,10 @@ export const rootVitestProjects = [
|
|||
"test/vitest/vitest.commands-light.config.ts",
|
||||
"test/vitest/vitest.commands.config.ts",
|
||||
"test/vitest/vitest.auto-reply.config.ts",
|
||||
"test/vitest/vitest.agents.config.ts",
|
||||
"test/vitest/vitest.agents-core.config.ts",
|
||||
"test/vitest/vitest.agents-pi-embedded.config.ts",
|
||||
"test/vitest/vitest.agents-support.config.ts",
|
||||
"test/vitest/vitest.agents-tools.config.ts",
|
||||
"test/vitest/vitest.daemon.config.ts",
|
||||
"test/vitest/vitest.media.config.ts",
|
||||
"test/vitest/vitest.unit-fast.config.ts",
|
||||
|
|
|
|||
|
|
@ -45,6 +45,10 @@ const SCOPED_PROJECT_GROUP_ORDER_BY_NAME = new Map(
|
|||
[
|
||||
"acp",
|
||||
"agents",
|
||||
"agents-core",
|
||||
"agents-pi-embedded",
|
||||
"agents-support",
|
||||
"agents-tools",
|
||||
"auto-reply",
|
||||
"auto-reply-core",
|
||||
"auto-reply-reply",
|
||||
|
|
|
|||
|
|
@ -168,6 +168,11 @@ export const sharedVitestConfig = {
|
|||
"test/setup.extensions.ts",
|
||||
"test/setup-openclaw-runtime.ts",
|
||||
"test/vitest/vitest.channel-paths.mjs",
|
||||
"test/vitest/vitest.agents-paths.mjs",
|
||||
"test/vitest/vitest.agents-core.config.ts",
|
||||
"test/vitest/vitest.agents-pi-embedded.config.ts",
|
||||
"test/vitest/vitest.agents-support.config.ts",
|
||||
"test/vitest/vitest.agents-tools.config.ts",
|
||||
"test/vitest/vitest.channels.config.ts",
|
||||
"test/vitest/vitest.acp.config.ts",
|
||||
"test/vitest/vitest.boundary.config.ts",
|
||||
|
|
|
|||
|
|
@ -86,7 +86,10 @@ export const fullSuiteVitestShards = [
|
|||
"test/vitest/vitest.cli.config.ts",
|
||||
"test/vitest/vitest.commands-light.config.ts",
|
||||
"test/vitest/vitest.commands.config.ts",
|
||||
"test/vitest/vitest.agents.config.ts",
|
||||
"test/vitest/vitest.agents-core.config.ts",
|
||||
"test/vitest/vitest.agents-pi-embedded.config.ts",
|
||||
"test/vitest/vitest.agents-support.config.ts",
|
||||
"test/vitest/vitest.agents-tools.config.ts",
|
||||
"test/vitest/vitest.daemon.config.ts",
|
||||
"test/vitest/vitest.plugin-sdk-light.config.ts",
|
||||
"test/vitest/vitest.plugin-sdk.config.ts",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue