Files
OmniRoute/tests/unit/cloud-agent-health-api.test.ts
Diego Rodrigues de Sa e Souza 3c9883bb73 Release v3.8.29 (#4126)
OmniRoute v3.8.29 — 115 commits since v3.8.28. Full CHANGELOG + 41 i18n mirrors. All content quality gates green (build, unit 8/8, vitest 188/188, PR test policy, quality gates extended, docs sync, quality ratchet). Remaining red CI checks are pre-existing release flakes (coverage-shard/integration/node-compat teardown), a new transitive undici advisory in electron devDeps, and a workflow-level CodeQL fail (0 open alerts). VPS-validated by the operator.
2026-06-19 06:49:01 -03:00

81 lines
2.6 KiB
TypeScript

import assert from "node:assert/strict";
import { describe, test } from "node:test";
import { getAvailableAgents } from "../../src/lib/cloudAgent/registry.ts";
describe("cloud-agent health API — getAvailableAgents", () => {
test("returns exactly four agents", () => {
const agents = getAvailableAgents();
assert.equal(agents.length, 4);
});
test('includes "jules"', () => {
assert.ok(getAvailableAgents().includes("jules"));
});
test('includes "devin"', () => {
assert.ok(getAvailableAgents().includes("devin"));
});
test('includes "codex-cloud"', () => {
assert.ok(getAvailableAgents().includes("codex-cloud"));
});
test('includes "cursor-cloud"', () => {
assert.ok(getAvailableAgents().includes("cursor-cloud"));
});
test("returns agents in expected order", () => {
assert.deepEqual(getAvailableAgents(), ["jules", "devin", "codex-cloud", "cursor-cloud"]);
});
});
describe("cloud-agent health API — health check logic", () => {
// The route's checkProviderHealth returns { connected: false, error: "No credentials configured" }
// when getCredentialFromDb returns null. We test this logic pattern directly.
test("missing credentials produces connected: false with error message", () => {
// Simulate the logic from the route handler
const credentials = null; // getCredentialFromDb returns null
const result = {
id: "jules",
name: "Jules",
connected: credentials !== null,
latencyMs: 0,
error: credentials === null ? "No credentials configured" : undefined,
};
assert.equal(result.connected, false);
assert.equal(result.error, "No credentials configured");
});
test("unknown provider produces connected: false with Unknown provider error", () => {
// Simulate: getAgent returns null for unknown provider
const agent = null;
const result = {
id: "unknown",
name: "unknown",
connected: false,
latencyMs: 0,
error: agent === null ? "Unknown provider" : undefined,
};
assert.equal(result.connected, false);
assert.equal(result.error, "Unknown provider");
});
test("PROVIDER_NAMES maps agent ids to display names", () => {
const PROVIDER_NAMES: Record<string, string> = {
jules: "Jules",
devin: "Devin",
"codex-cloud": "Codex Cloud",
"cursor-cloud": "Cursor Cloud",
};
assert.equal(PROVIDER_NAMES["jules"], "Jules");
assert.equal(PROVIDER_NAMES["devin"], "Devin");
assert.equal(PROVIDER_NAMES["codex-cloud"], "Codex Cloud");
assert.equal(PROVIDER_NAMES["cursor-cloud"], "Cursor Cloud");
assert.equal(PROVIDER_NAMES["nonexistent"], undefined);
});
});