mirror of
https://github.com/openclaw/openclaw.git
synced 2026-04-29 18:12:52 +00:00
fix: add nodes default-node regression test (#27444) (thanks @carbaj03)
This commit is contained in:
32
src/agents/tools/nodes-utils.test.ts
Normal file
32
src/agents/tools/nodes-utils.test.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import type { NodeListNode } from "./nodes-utils.js";
|
||||
import { resolveNodeIdFromList } from "./nodes-utils.js";
|
||||
|
||||
function node(overrides: Partial<NodeListNode> & { nodeId: string }): NodeListNode {
|
||||
return {
|
||||
nodeId: overrides.nodeId,
|
||||
caps: ["canvas"],
|
||||
connected: true,
|
||||
...overrides,
|
||||
};
|
||||
}
|
||||
|
||||
describe("resolveNodeIdFromList defaults", () => {
|
||||
it("falls back to first connected canvas-capable node when multiple non-Mac candidates exist", () => {
|
||||
const nodes: NodeListNode[] = [
|
||||
node({ nodeId: "ios-1", platform: "ios" }),
|
||||
node({ nodeId: "android-1", platform: "android" }),
|
||||
];
|
||||
|
||||
expect(resolveNodeIdFromList(nodes, undefined, true)).toBe("ios-1");
|
||||
});
|
||||
|
||||
it("preserves local Mac preference when exactly one local Mac candidate exists", () => {
|
||||
const nodes: NodeListNode[] = [
|
||||
node({ nodeId: "ios-1", platform: "ios" }),
|
||||
node({ nodeId: "mac-1", platform: "macos" }),
|
||||
];
|
||||
|
||||
expect(resolveNodeIdFromList(nodes, undefined, true)).toBe("mac-1");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user