Files
OmniRoute/tests/unit/rate-limit-provider-default.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

37 lines
1.6 KiB
TypeScript

import { test } from "node:test";
import assert from "node:assert/strict";
import {
acquireProviderDefaultSlot,
__setProviderDefaultRateLimitsForTests,
} from "../../open-sse/services/providerDefaultRateLimit.ts";
test("acquireProviderDefaultSlot enforces the configured per-provider cap (N+1 blocks)", () => {
__setProviderDefaultRateLimitsForTests({ "test-provider": { requests: 2, windowMs: 60000 } });
try {
assert.equal(acquireProviderDefaultSlot("test-provider", "conn-1"), 0, "1st request proceeds");
assert.equal(acquireProviderDefaultSlot("test-provider", "conn-1"), 0, "2nd request proceeds");
const wait = acquireProviderDefaultSlot("test-provider", "conn-1");
assert.ok(wait > 0, "3rd request in a 2/60s window is told to wait");
assert.ok(wait <= 60000, "wait never exceeds the window");
} finally {
__setProviderDefaultRateLimitsForTests(null);
}
});
test("acquireProviderDefaultSlot is a no-op (0) when the provider has no configured default", () => {
__setProviderDefaultRateLimitsForTests(null);
assert.equal(acquireProviderDefaultSlot("unconfigured-provider", "c"), 0);
});
test("acquireProviderDefaultSlot isolates connections of the same provider", () => {
__setProviderDefaultRateLimitsForTests({ p: { requests: 1, windowMs: 60000 } });
try {
assert.equal(acquireProviderDefaultSlot("p", "a"), 0);
assert.equal(acquireProviderDefaultSlot("p", "b"), 0, "a different connection has its own window");
assert.ok(acquireProviderDefaultSlot("p", "a") > 0, "the first connection is now saturated");
} finally {
__setProviderDefaultRateLimitsForTests(null);
}
});