test.deploy/core/converters/catalog.converter.test.ts
test.deploy/core/converters/catalog.converter.test.ts is a file in Codebase Testing. 24 lines of code and 0 definitions.
import { describe, expect, it } from "vitest";
import { rootRows, shardAddresses, shardRow } from "@banes-lab/deploy/core/converters/catalog.converter.ts";
const ENTRY = { bytes: 3, fingerprint: "f", json: "https://x.test/json/a", markdown: null, ref: null, title: null };
describe("rootRows", () => {
it("takes the first entry of each list the root index carries and skips a malformed one", () => {
const listed = { ...ENTRY, ref: "api:records/a", title: "A" };
const root = { collections: [listed], pages: [{ json: "https://x.test/json/b" }], trees: [] };
expect(rootRows(root)).toStrictEqual([listed]);
expect(rootRows(null)).toStrictEqual([]);
});
});
describe("shardAddresses and shardRow", () => {
it("lists the shard addresses and reads a shard's first row by its declared columns", () => {
expect(shardAddresses({ shards: [{ json: "https://x.test/json/api/ids/a" }, { group: "b" }] })).toStrictEqual([
"https://x.test/json/api/ids/a",
]);
const shard = {
columns: ["json", "bytes", "fingerprint", "markdown"],
rows: [["https://x.test/json/a", 3, "f", "https://x.test/a.md"]],
};
expect(shardRow(shard)).toStrictEqual({ ...ENTRY, markdown: "https://x.test/a.md" });
expect(shardRow({ columns: [], rows: [] })).toBeNull();
});
});