test.govlab/docs/core/predicates/character.predicate.test.ts
test.govlab/docs/core/predicates/character.predicate.test.ts is a file in Codebase Testing. 21 lines of code and 0 definitions.
import { describe, expect, it } from "vitest";
import { isAsciiAlnum, isAsciiLower, isKebab } from "@govlab/docs/core/predicates/character.predicate.ts";
describe("the character predicates", () => {
it("classify single characters", () => {
expect(["a", "Z", "7", "-"].map(isAsciiAlnum)).toStrictEqual([true, true, true, false]);
expect(["a", "A"].map(isAsciiLower)).toStrictEqual([true, false]);
});
it("accept a kebab name and refuse edge, doubled or foreign hyphens and other characters", () => {
expect(["scale-docs", "a1", "-a", "a-", "a--b", "Aa", "a_b", "", 7].map(isKebab)).toStrictEqual([
true,
true,
false,
false,
false,
false,
false,
false,
false,
]);
});
});