Files
Rūdolfs Ošiņš 5b3bc10a06 Check bare RIDs against already seeded repos
The seed form accepts a RID without the rad: prefix but compared it as
typed against lists that have the prefix, so duplicates got through.
2026-10-01 18:20:24 +02:00

32 lines
922 B
TypeScript

import { describe, expect, test } from "vitest";
import { seedTarget } from "@app/lib/seedRepo";
const rid = "rad:z3fpY7nttPPa6MBnAv2DccHzQJnqe";
const bare = "z3fpY7nttPPa6MBnAv2DccHzQJnqe";
describe("seedTarget", () => {
test.each([rid, bare, ` ${rid} `])("accepts %j as %j", input => {
expect(seedTarget(input, [], [])).toEqual({ rid });
});
test.each(["", "rad:", "rad:z0OIl", "not a rid", "rad:zabc"])(
"rejects %j",
input => {
expect(seedTarget(input, [], [])).toEqual({ error: "RID is not valid" });
},
);
test.each([rid, bare])("reports %j as already queued", input => {
expect(seedTarget(input, [rid], [])).toEqual({
error: "This repo is already queued for fetching",
});
});
test.each([rid, bare])("reports %j as already seeded", input => {
expect(seedTarget(input, [], [rid])).toEqual({
error: "This repo is already seeded",
});
});
});