mirror of
https://github.com/Threnklyn/advent-of-code-go.git
synced 2026-05-18 19:13:27 +02:00
85 lines
1.3 KiB
Go
85 lines
1.3 KiB
Go
package learning
|
|
|
|
import (
|
|
"reflect"
|
|
"testing"
|
|
)
|
|
|
|
var (
|
|
example1 = `22 13 17 11 0
|
|
8 2 23 4 24
|
|
21 9 14 16 7
|
|
6 10 3 18 5
|
|
1 12 20 15 19`
|
|
|
|
example2 = ` 3 15 0 2 22
|
|
9 18 13 17 5
|
|
19 8 7 25 23
|
|
20 11 10 24 4
|
|
14 21 16 12 6`
|
|
|
|
example3 = `14 21 17 24 4
|
|
10 16 15 9 19
|
|
18 8 23 26 20
|
|
22 11 13 6 5
|
|
2 0 12 3 7`
|
|
)
|
|
|
|
func TestCaptureBingoBoard(t *testing.T) {
|
|
type args struct {
|
|
board string
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
args args
|
|
want [][]int
|
|
}{
|
|
{
|
|
name: "example 1",
|
|
args: args{
|
|
board: example1,
|
|
},
|
|
want: [][]int{
|
|
{22, 13, 17, 11, 0},
|
|
{8, 2, 23, 4, 24},
|
|
{21, 9, 14, 16, 7},
|
|
{6, 10, 3, 18, 5},
|
|
{1, 12, 20, 15, 19},
|
|
},
|
|
},
|
|
{
|
|
name: "example 2",
|
|
args: args{
|
|
board: example2,
|
|
},
|
|
want: [][]int{
|
|
{3, 15, 0, 2, 22},
|
|
{9, 18, 13, 17, 5},
|
|
{19, 8, 7, 25, 23},
|
|
{20, 11, 10, 24, 4},
|
|
{14, 21, 16, 12, 6},
|
|
},
|
|
},
|
|
{
|
|
name: "example 3",
|
|
args: args{
|
|
board: example3,
|
|
},
|
|
want: [][]int{
|
|
{14, 21, 17, 24, 4},
|
|
{10, 16, 15, 9, 19},
|
|
{18, 8, 23, 26, 20},
|
|
{22, 11, 13, 6, 5},
|
|
{2, 0, 12, 3, 7},
|
|
},
|
|
},
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
if got := CaptureBingoBoard(tt.args.board); !reflect.DeepEqual(got, tt.want) {
|
|
t.Errorf("CaptureBingoBoard() = %v, want %v", got, tt.want)
|
|
}
|
|
})
|
|
}
|
|
}
|