Files
OmniRoute/tests/unit/compute-connection-default-name-6499.test.ts
Diego Rodrigues de Sa e Souza 92715c8f2c Release v3.8.46
Release v3.8.46. Full changelog: CHANGELOG.md → [3.8.46]. Contributor attribution in the CHANGELOG entries.
2026-07-07 13:14:06 -03:00

28 lines
1.1 KiB
TypeScript

import { test } from "node:test";
import assert from "node:assert/strict";
import { computeConnectionDefaultName } from "@/app/(dashboard)/dashboard/providers/[id]/components/modals/computeConnectionDefaultName";
// #6499 — the backend upserts API-key connections by (provider, name), so a second
// connection defaulting to "main" silently overwrites the first. The default name
// must stay "main" for the first connection (backward compatible) and get a unique
// numeric suffix afterwards.
test("first connection defaults to 'main'", () => {
assert.equal(computeConnectionDefaultName(0), "main");
});
test("undefined count is treated as zero → 'main'", () => {
assert.equal(computeConnectionDefaultName(undefined), "main");
});
test("subsequent connections get a unique numeric suffix", () => {
assert.equal(computeConnectionDefaultName(1), "main-2");
assert.equal(computeConnectionDefaultName(2), "main-3");
assert.equal(computeConnectionDefaultName(9), "main-10");
});
test("negative counts are clamped to 'main' (never a broken 'main-0')", () => {
assert.equal(computeConnectionDefaultName(-1), "main");
});