Files
SenMeshNet/electron/capabilities/registry.test.cjs
zhaolei 2f9f8da48e
Some checks failed
AI automation / Route event (push) Has been cancelled
AI automation / Hand reopened issue to maintainers (push) Has been cancelled
AI automation / Clean source issue state (push) Has been cancelled
AI automation / Reconcile handoffs (push) Has been cancelled
AI automation / Classify issue (push) Has been cancelled
AI automation / Claude Code smoke (push) Has been cancelled
AI automation / Review issue follow-up (push) Has been cancelled
AI automation / Publish issue follow-up (push) Has been cancelled
AI automation / Implement with Claude Code (push) Has been cancelled
AI automation / Publish implement PR (push) Has been cancelled
AI automation / Continue queued issue comments (push) Has been cancelled
AI automation / Codex review loop (push) Has been cancelled
AI automation / Publish Codex fix (push) Has been cancelled
AI automation / Clear Codex dispatch marker (push) Has been cancelled
AI automation / Own PR re-request Codex (push) Has been cancelled
AI automation / External PR re-request Codex (push) Has been cancelled
AI automation / Poll Codex reaction / retry (push) Has been cancelled
Initial commit: NetMesh smart ops platform with 3D topology, inspection reports, RCA and AI ops assistant
2026-10-15 13:53:04 +08:00

46 lines
1.7 KiB
JavaScript

"use strict";
const test = require("node:test");
const assert = require("node:assert/strict");
const {
ALL_CAPABILITIES,
getCapabilityById,
getCapabilityByRpcMethod,
getCapabilityByMcpTool,
getCapabilityByCliCommand,
listCapabilities,
} = require("./registry.cjs");
const { CAPABILITY_STATUS, CAPABILITY_SURFACES } = require("./constants.cjs");
test("registry contains implemented capabilities", () => {
assert.ok(ALL_CAPABILITIES.length >= 20);
const implemented = listCapabilities({ status: CAPABILITY_STATUS.IMPLEMENTED });
assert.ok(implemented.length >= 20);
});
test("registry resolves builtin rpc methods and mcp tools", () => {
const exec = getCapabilityByRpcMethod("netcatty/exec", CAPABILITY_SURFACES.BUILTIN);
assert.equal(exec?.id, "terminal.execute");
const tool = getCapabilityByMcpTool("terminal_execute", CAPABILITY_SURFACES.BUILTIN);
assert.equal(tool?.id, "terminal.execute");
});
test("registry resolves public rpc aliases for future surfaces", () => {
const publicExec = getCapabilityByRpcMethod("public/terminalExecute", CAPABILITY_SURFACES.PUBLIC);
assert.equal(publicExec?.id, "terminal.execute");
assert.equal(publicExec?.status, CAPABILITY_STATUS.IMPLEMENTED);
});
test("registry resolves cli commands", () => {
const env = getCapabilityByCliCommand(["env"]);
assert.equal(env?.id, "session.environment");
const sftpList = getCapabilityByCliCommand(["sftp", "list"]);
assert.equal(sftpList?.id, "sftp.list");
});
test("vault and portforward capabilities are implemented", () => {
assert.equal(getCapabilityById("vault.host.notes.get")?.status, CAPABILITY_STATUS.IMPLEMENTED);
assert.equal(getCapabilityById("portforward.start")?.status, CAPABILITY_STATUS.IMPLEMENTED);
});