mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-09-14 19:02:17 +03:00
The service operator asked in writing (2026-08-30) that their service be removed from OmniRoute entirely: executor, registry entry, no-auth catalog entry and alias, icon mapping, env var, docs rows, dedicated tests and snapshots, and every passing mention in comments, fixtures and CHANGELOG entries. Provider count drops from 355 to 354 on every canonical surface. Co-authored-by: Markus Hartung <diegosouzapw@users.noreply.github.com>
46 lines
1.6 KiB
TypeScript
46 lines
1.6 KiB
TypeScript
/**
|
|
* Tests for noAuth provider validation:
|
|
* - Bug 1: `chipotle` missing from providerAllowsOptionalApiKey
|
|
* - `kimi` API key provider stays on the dedicated Moonshot executor
|
|
*/
|
|
import test from "node:test";
|
|
import assert from "node:assert/strict";
|
|
|
|
import {
|
|
NOAUTH_PROVIDERS,
|
|
providerAllowsOptionalApiKey,
|
|
supportsNoAuthProviderProxy,
|
|
} from "../../src/shared/constants/providers.ts";
|
|
import { hasSpecializedExecutor } from "../../open-sse/executors/index.ts";
|
|
|
|
// Bug 1: all noAuth providers should allow optional API key
|
|
for (const provider of ["chipotle", "opencode", "duckduckgo-web", "veoaifree-web"]) {
|
|
test(`${provider} allows optional API key (noAuth provider)`, () => {
|
|
assert.equal(providerAllowsOptionalApiKey(provider), true);
|
|
});
|
|
}
|
|
|
|
// `kimi` is the hidden legacy id for Moonshot API compatibility, not Kimi Web.
|
|
test("kimi API key provider uses the specialized Moonshot executor", () => {
|
|
assert.equal(hasSpecializedExecutor("kimi"), true);
|
|
});
|
|
|
|
// no regression: kimi-web and kimi-coding still have their executors
|
|
test("kimi-web still has specialized executor", () => {
|
|
assert.equal(hasSpecializedExecutor("kimi-web"), true);
|
|
});
|
|
|
|
test("kimi-coding-apikey still has specialized executor", () => {
|
|
assert.equal(hasSpecializedExecutor("kimi-coding-apikey"), true);
|
|
});
|
|
|
|
test("provider proxy controls use a centralized no-auth capability allowlist", () => {
|
|
assert.equal(supportsNoAuthProviderProxy("opencode"), true);
|
|
|
|
for (const providerId of Object.keys(NOAUTH_PROVIDERS)) {
|
|
if (providerId !== "opencode") {
|
|
assert.equal(supportsNoAuthProviderProxy(providerId), false, providerId);
|
|
}
|
|
}
|
|
});
|