26 lines
836 B
JavaScript
26 lines
836 B
JavaScript
import { readFile } from "node:fs/promises";
|
|
import { describe, expect, it } from "vitest";
|
|
|
|
describe("registry governance manifest", () => {
|
|
it("declares exactly eight single-owner registries and impact labels", async () => {
|
|
const governance = JSON.parse(
|
|
await readFile("config/contracts/registry-governance.json", "utf8"),
|
|
);
|
|
const registries =
|
|
/** @type {Array<{registryId: string, owner: string}>} */ (
|
|
governance.registries
|
|
);
|
|
expect(governance.registries).toHaveLength(8);
|
|
expect(new Set(registries.map((entry) => entry.registryId)).size).toBe(
|
|
8,
|
|
);
|
|
expect(registries.every((entry) => entry.owner)).toBe(true);
|
|
expect(governance.compatibilityImpact.allowed).toEqual([
|
|
"none",
|
|
"additive",
|
|
"behavior-change",
|
|
"breaking",
|
|
]);
|
|
});
|
|
});
|