You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.3 KiB
TypeScript
35 lines
1.3 KiB
TypeScript
import { describe, it, expect } from "vitest";
|
|
import { isValidSudoku } from "./isValidSudoku.ts";
|
|
|
|
describe("isValidSudoku", () => {
|
|
|
|
it("true case", () => {
|
|
let board =
|
|
[["5", "3", ".", ".", "7", ".", ".", ".", "."]
|
|
, ["6", ".", ".", "1", "9", "5", ".", ".", "."]
|
|
, [".", "9", "8", ".", ".", ".", ".", "6", "."]
|
|
, ["8", ".", ".", ".", "6", ".", ".", ".", "3"]
|
|
, ["4", ".", ".", "8", ".", "3", ".", ".", "1"]
|
|
, ["7", ".", ".", ".", "2", ".", ".", ".", "6"]
|
|
, [".", "6", ".", ".", ".", ".", "2", "8", "."]
|
|
, [".", ".", ".", "4", "1", "9", ".", ".", "5"]
|
|
, [".", ".", ".", ".", "8", ".", ".", "7", "9"]];
|
|
|
|
expect(isValidSudoku(board)).toBeTruthy();
|
|
});
|
|
|
|
it("false case", () => {
|
|
let board =
|
|
[["8", "3", ".", ".", "7", ".", ".", ".", "."]
|
|
, ["6", ".", ".", "1", "9", "5", ".", ".", "."]
|
|
, [".", "9", "8", ".", ".", ".", ".", "6", "."]
|
|
, ["8", ".", ".", ".", "6", ".", ".", ".", "3"]
|
|
, ["4", ".", ".", "8", ".", "3", ".", ".", "1"]
|
|
, ["7", ".", ".", ".", "2", ".", ".", ".", "6"]
|
|
, [".", "6", ".", ".", ".", ".", "2", "8", "."]
|
|
, [".", ".", ".", "4", "1", "9", ".", ".", "5"]
|
|
, [".", ".", ".", ".", "8", ".", ".", "7", "9"]]
|
|
expect(isValidSudoku(board)).toBeFalsy();
|
|
});
|
|
});
|