test(mcp): align workflow assertions with current guidance
This commit is contained in:
parent
f2dc749c86
commit
f8bb113c22
|
|
@ -61,6 +61,25 @@ it("rejects non-absolute deep-link values", () => {
|
|||
expect(result.success).toBe(false);
|
||||
});
|
||||
|
||||
it("accepts any argument count while validating each argument", () => {
|
||||
const input = electronActiveObservationInputSchema.parse({
|
||||
executable_path: "/opt/electron",
|
||||
application_path: "/opt/app/main.js",
|
||||
application_root: "/opt/app",
|
||||
args: Array.from({ length: 40 }, (_, index) => `--flag-${index}`),
|
||||
});
|
||||
|
||||
expect(input.args).toHaveLength(40);
|
||||
expect(
|
||||
electronActiveObservationInputSchema.safeParse({
|
||||
executable_path: "/opt/electron",
|
||||
application_path: "/opt/app/main.js",
|
||||
application_root: "/opt/app",
|
||||
args: ["x".repeat(4_097)],
|
||||
}).success,
|
||||
).toBe(false);
|
||||
});
|
||||
|
||||
it("redacts action inputs from Playwright failures", async () => {
|
||||
const selector = "#secret-selector";
|
||||
const input = electronActiveObservationInputSchema.parse({
|
||||
|
|
|
|||
|
|
@ -208,7 +208,7 @@ describe("browser scenario MCP tool", () => {
|
|||
],
|
||||
},
|
||||
capture: { after_each_step: [], at_end: ["url"], events: [] },
|
||||
limits: { max_duration_ms: 60_000, max_total_metadata_bytes: 4_194_304 },
|
||||
limits: { max_duration_ms: 60_000 },
|
||||
});
|
||||
|
||||
const captured = await client.callTool({
|
||||
|
|
|
|||
|
|
@ -243,7 +243,7 @@ const assertLiveIdentity = async (client: Client): Promise<void> => {
|
|||
"For standalone JavaScript or ASAR analysis, use analyze_javascript_application",
|
||||
);
|
||||
expect(instructions).toContain(
|
||||
"For an archive or application package, call open_binary(path), then inspect_artifact",
|
||||
"For an archive or application package, open_binary(path) binds the active target; use inspect_artifact when its graph and findings help",
|
||||
);
|
||||
const identity = await client.callTool({
|
||||
name: "binary_session",
|
||||
|
|
|
|||
|
|
@ -116,7 +116,7 @@ describe("target-free MCP workflow", () => {
|
|||
const beforeTools = (await mcp.listTools()).tools;
|
||||
const beforeNames = beforeTools.map(({ name }) => name);
|
||||
expect(mcp.getInstructions()).toContain(
|
||||
"For an archive or application package, call open_binary(path), then inspect_artifact",
|
||||
"For an archive or application package, open_binary(path) binds the active target; use inspect_artifact when its graph and findings help",
|
||||
);
|
||||
expect(
|
||||
beforeTools.find(({ name }) => name === "inspect_artifact")?.description,
|
||||
|
|
|
|||
Loading…
Reference in New Issue