Loading board/terminal/terminal_test.go +81 −0 Original line number Diff line number Diff line Loading @@ -5,3 +5,84 @@ import "testing" func TestSudokuBoardTerminalDummy(t *testing.T) { t.Skip("just a dummy") } const ( chars = " ─ │ ┌ ┐ └ ┘ ├ ┤ ┬ ┴ ┼ ═ ║ ╒ ╓ ╔ ╕ ╖ ╗ ╘ ╙ ╚ ╛ ╜ ╝ ╞ ╟ ╠ ╡ ╢ ╣ ╤ ╥ ╦ ╧ ╨ ╩ ╪ ╫ ╬ " boardOut = ` ┌───┬───┬───╥───┬───┬───╥───┬───┬───┐ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ╞═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╡ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ╞═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╡ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ └───┴───┴───╨───┴───┴───╨───┴───┴───┘ ` boardOut2 = ` ┌───────┬───────┬───────╥───────┬───────┬───────╥───────┬───────┬───────┐ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ╞═══════╪═══════╪═══════╬═══════╪═══════╪═══════╬═══════╪═══════╪═══════╡ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ╞═══════╪═══════╪═══════╬═══════╪═══════╪═══════╬═══════╪═══════╪═══════╡ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | └───────┴───────┴───────╨───────┴───────┴───────╨───────┴───────┴───────┘ ` problem = ` |53 7 | |6 195 | | 98 6 | |8 6 3| |4 8 3 1| |7 2 6| | 6 28 | | 419 5| | 8 79| ` problemCompact = "53 7 6 195 98 6 8 6 34 8 3 17 2 6 6 28 419 5 8 79" solutionCompact = "534678912672195348198342567859761423426853791713924856961537284287419635345286179" ) func TestEmptyBoard(t *testing.T) { } Loading
board/terminal/terminal_test.go +81 −0 Original line number Diff line number Diff line Loading @@ -5,3 +5,84 @@ import "testing" func TestSudokuBoardTerminalDummy(t *testing.T) { t.Skip("just a dummy") } const ( chars = " ─ │ ┌ ┐ └ ┘ ├ ┤ ┬ ┴ ┼ ═ ║ ╒ ╓ ╔ ╕ ╖ ╗ ╘ ╙ ╚ ╛ ╜ ╝ ╞ ╟ ╠ ╡ ╢ ╣ ╤ ╥ ╦ ╧ ╨ ╩ ╪ ╫ ╬ " boardOut = ` ┌───┬───┬───╥───┬───┬───╥───┬───┬───┐ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ╞═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╡ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ╞═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╡ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ ├───┼───┼───╫───┼───┼───╫───┼───┼───┼ │ 1 │ 2 │ 3 ║ 4 │ 5 │ 6 ║ 7 │ 8 │ 9 │ └───┴───┴───╨───┴───┴───╨───┴───┴───┘ ` boardOut2 = ` ┌───────┬───────┬───────╥───────┬───────┬───────╥───────┬───────┬───────┐ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ╞═══════╪═══════╪═══════╬═══════╪═══════╪═══════╬═══════╪═══════╪═══════╡ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ╞═══════╪═══════╪═══════╬═══════╪═══════╪═══════╬═══════╪═══════╪═══════╡ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | ├───────┼───────┼───────╫───────┼───────┼───────╫───────┼───────┼───────┼ │ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 ║ 1 2 3 │ 1 2 3 │ 1 2 3 │ | 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 ║ 4 5 6 | 4 5 6 | 4 5 6 | | 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 ║ 7 8 9 | 7 8 9 | 7 8 9 | └───────┴───────┴───────╨───────┴───────┴───────╨───────┴───────┴───────┘ ` problem = ` |53 7 | |6 195 | | 98 6 | |8 6 3| |4 8 3 1| |7 2 6| | 6 28 | | 419 5| | 8 79| ` problemCompact = "53 7 6 195 98 6 8 6 34 8 3 17 2 6 6 28 419 5 8 79" solutionCompact = "534678912672195348198342567859761423426853791713924856961537284287419635345286179" ) func TestEmptyBoard(t *testing.T) { }