package main
import "testing"
func TestChecksum(t *testing.T) {
tests := []struct {
img []int
expected int
}{
{
img: []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2},
expected: 1,
},
}
for _, test := range tests {
got := CalculateChecksum(test.img, 3, 2)
if got != test.expected {
t.Errorf("Got %+v, expected %+v", got, test.expected)
}
}
}
func TestFlatten(t *testing.T) {
tests := []struct {
img []int
expected []int
}{
{
img: []int{0, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 2, 0, 0, 0, 0},
expected: []int{0, 1, 1, 0},
},
}
for _, test := range tests {
got := FlattenImage(test.img, 2, 2)
for i := range got {
if got[i] != test.expected[i] {
t.Errorf("Got %+v, expected %+v", got, test.expected)
break
}
}
}
}