import { describe, expect, test } from "bun:test"; import { generateOtp, generateRandomKey, } from "@/internal/dev/cliAuth/cliAuthUtils.js"; describe("cliAuthUtils", () => { test("generates a six digit OTP", () => { const otp = generateOtp(); expect(otp).toMatch(/^\d{6}$/); expect(Number(otp)).toBeGreaterThanOrEqual(100000); expect(Number(otp)).toBeLessThanOrEqual(999999); }); test("generates hex keys with the requested byte length", () => { expect(generateRandomKey()).toMatch(/^[0-9a-f]{64}$/); expect(generateRandomKey(8)).toMatch(/^[0-9a-f]{16}$/); }); test("rejects invalid key lengths", () => { expect(() => generateRandomKey(0)).toThrow( "Key length must be a positive number.", ); }); });