import { describe, test, expect } from "bun:test"; import { generateSolvedBoard } from "./sudoku"; import { assertValidFullBoard } from "./validate-board"; const valids = [ "534678912672195348198342567859761423426853791713924856961537284287419635345286179", "456789123123456789789123456567891234234567891891234567678912345345678912912345678", "234567891567891234891234567345678912678912345912345678456789123789123456123456789", "987654321654321987321987654876543219543219876219876543765432198432198765198765432" ]; const invalids = [ "534678912672195348198342567859761423426853791713924856961537284287419635345286171", "534678911672195348198342567859761423426853791713924856961537284287419635345286179", "534678912572195348198342567859761423426853791713924856961537284287419635345286179", "534678912672195348198342567859761423426863791713924856961537284287419635345286179", ]; describe("Testing the Asserter with static boards", () => { test("valid boards", () => { for (let board of valids) { expect(() => assertValidFullBoard(board)).not.toThrow(); } }) test("invalid boards", () => { for (let board of invalids) { expect(() => assertValidFullBoard(board)).toThrow() } }) }); describe("Testing the generateSolvedBoard", () => { test("generates 10 valid boards", () => { for (let i = 0; i < 10; i++) { const generated = generateSolvedBoard(); assertValidFullBoard(generated); }; }); test("generates 100 valid boards", () => { for (let i = 0; i < 100; i++) { const generated = generateSolvedBoard(); assertValidFullBoard(generated); }; }); test("generates 1000 valid boards", () => { for (let i = 0; i < 1000; i++) { const generated = generateSolvedBoard(); assertValidFullBoard(generated); }; }); });