test: stabilize docker e2e suites for pairing and model updates
This commit is contained in:
@@ -3,7 +3,7 @@ import type { OpenClawConfig } from "../config/config.js";
|
||||
import "./test-helpers/fast-coding-tools.js";
|
||||
import { createOpenClawCodingTools } from "./pi-tools.js";
|
||||
|
||||
const defaultTools = createOpenClawCodingTools();
|
||||
const defaultTools = createOpenClawCodingTools({ senderIsOwner: true });
|
||||
|
||||
describe("createOpenClawCodingTools", () => {
|
||||
it("preserves action enums in normalized schemas", () => {
|
||||
|
||||
@@ -176,7 +176,9 @@ describe("createOpenClawCodingTools", () => {
|
||||
expect(parameters.required ?? []).toContain("action");
|
||||
});
|
||||
it("exposes raw for gateway config.apply tool calls", () => {
|
||||
const gateway = defaultTools.find((tool) => tool.name === "gateway");
|
||||
const gateway = createOpenClawCodingTools({ senderIsOwner: true }).find(
|
||||
(tool) => tool.name === "gateway",
|
||||
);
|
||||
expect(gateway).toBeDefined();
|
||||
|
||||
const parameters = gateway?.parameters as {
|
||||
@@ -505,7 +507,11 @@ describe("createOpenClawCodingTools", () => {
|
||||
return found;
|
||||
};
|
||||
|
||||
for (const tool of defaultTools) {
|
||||
const googleTools = createOpenClawCodingTools({
|
||||
modelProvider: "google",
|
||||
senderIsOwner: true,
|
||||
});
|
||||
for (const tool of googleTools) {
|
||||
const violations = findUnsupportedKeywords(tool.parameters, `${tool.name}.parameters`);
|
||||
expect(violations).toEqual([]);
|
||||
}
|
||||
|
||||
@@ -338,15 +338,17 @@ describe("applySkillEnvOverrides", () => {
|
||||
expect(process.env.NODE_OPTIONS).toBeUndefined();
|
||||
} finally {
|
||||
restore();
|
||||
expect(process.env.OPENAI_API_KEY).toBeUndefined();
|
||||
expect(process.env.NODE_OPTIONS).toBeUndefined();
|
||||
if (originalApiKey === undefined) {
|
||||
expect(process.env.OPENAI_API_KEY).toBeUndefined();
|
||||
delete process.env.OPENAI_API_KEY;
|
||||
} else {
|
||||
expect(process.env.OPENAI_API_KEY).toBe(originalApiKey);
|
||||
process.env.OPENAI_API_KEY = originalApiKey;
|
||||
}
|
||||
if (originalNodeOptions === undefined) {
|
||||
expect(process.env.NODE_OPTIONS).toBeUndefined();
|
||||
delete process.env.NODE_OPTIONS;
|
||||
} else {
|
||||
expect(process.env.NODE_OPTIONS).toBe(originalNodeOptions);
|
||||
process.env.NODE_OPTIONS = originalNodeOptions;
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -405,11 +407,13 @@ describe("applySkillEnvOverrides", () => {
|
||||
metadata: '{"openclaw":{"requires":{"env":["OPENAI_API_KEY"]}}}',
|
||||
});
|
||||
|
||||
const originalApiKey = process.env.OPENAI_API_KEY;
|
||||
process.env.OPENAI_API_KEY = "seed-present";
|
||||
|
||||
const snapshot = buildWorkspaceSkillSnapshot(workspaceDir, {
|
||||
managedSkillsDir: path.join(workspaceDir, ".managed"),
|
||||
});
|
||||
|
||||
const originalApiKey = process.env.OPENAI_API_KEY;
|
||||
delete process.env.OPENAI_API_KEY;
|
||||
|
||||
const restore = applySkillEnvOverridesFromSnapshot({
|
||||
@@ -431,10 +435,11 @@ describe("applySkillEnvOverrides", () => {
|
||||
expect(process.env.OPENAI_API_KEY).toBe("snap-secret");
|
||||
} finally {
|
||||
restore();
|
||||
expect(process.env.OPENAI_API_KEY).toBeUndefined();
|
||||
if (originalApiKey === undefined) {
|
||||
expect(process.env.OPENAI_API_KEY).toBeUndefined();
|
||||
delete process.env.OPENAI_API_KEY;
|
||||
} else {
|
||||
expect(process.env.OPENAI_API_KEY).toBe(originalApiKey);
|
||||
process.env.OPENAI_API_KEY = originalApiKey;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user