Files
MineGeo/tests/site-settings.test.ts

20 lines
683 B
TypeScript

import assert from "node:assert/strict";
import { test } from "node:test";
import { siteSettingsSchema } from "../shared/site-settings";
test("site settings accept only an explicit boolean and reject privilege fields", () => {
for (const enabled of [false, true])
assert.equal(
siteSettingsSchema.parse({ betaBadgeEnabled: enabled }).betaBadgeEnabled,
enabled,
);
for (const payload of [
{},
{ betaBadgeEnabled: "false" },
{ betaBadgeEnabled: null },
{ betaBadgeEnabled: false, role: "moderator" },
{ betaBadgeEnabled: false, updatedBy: "another-player" },
])
assert.equal(siteSettingsSchema.safeParse(payload).success, false);
});