2 changed files with 98 additions and 0 deletions
@ -0,0 +1,32 @@ |
|||
import { describe, expect, test } from "bun:test"; |
|||
import { getConfigDefinition, validateConfigValue } from "./registry"; |
|||
|
|||
describe("comment email config validation", () => { |
|||
test("accepts a valid commentMailFromEmail", () => { |
|||
expect(validateConfigValue("commentMailFromEmail" as never, "noreply@example.com")).toBe(true); |
|||
}); |
|||
|
|||
test("rejects an invalid commentMailFromEmail", () => { |
|||
expect(validateConfigValue("commentMailFromEmail" as never, "invalid-email")).toBe(false); |
|||
}); |
|||
|
|||
test("validates commentNotifyEnabled as boolean", () => { |
|||
expect(validateConfigValue("commentNotifyEnabled" as never, true)).toBe(true); |
|||
expect(validateConfigValue("commentNotifyEnabled" as never, false)).toBe(true); |
|||
expect(validateConfigValue("commentNotifyEnabled" as never, "true")).toBe(false); |
|||
}); |
|||
|
|||
test("enforces commentSmtpPort boundaries", () => { |
|||
expect(validateConfigValue("commentSmtpPort" as never, 0)).toBe(false); |
|||
expect(validateConfigValue("commentSmtpPort" as never, 65536)).toBe(false); |
|||
expect(validateConfigValue("commentSmtpPort" as never, 465)).toBe(true); |
|||
}); |
|||
|
|||
test("defines commentNotifyEnabled as user-overridable both-scope key", () => { |
|||
const definition = getConfigDefinition("commentNotifyEnabled" as never); |
|||
expect(definition.scope).toBe("both"); |
|||
expect(definition.valueType).toBe("boolean"); |
|||
expect(definition.defaultValue).toBe(true); |
|||
expect(definition.userOverridable).toBe(true); |
|||
}); |
|||
}); |
|||
Loading…
Reference in new issue