38 lines
681 B
Go
38 lines
681 B
Go
package day22
|
|
|
|
import (
|
|
"strings"
|
|
"testing"
|
|
)
|
|
|
|
func TestReadBlock(t *testing.T) {
|
|
lines := `1,0,1~1,2,1
|
|
0,0,2~2,0,2
|
|
0,2,3~2,2,3
|
|
0,0,4~0,2,4
|
|
2,0,5~2,2,5
|
|
0,1,6~2,1,6
|
|
1,1,8~1,1,9`
|
|
|
|
for _, line := range strings.Split(lines, "\n") {
|
|
b := ReadBlock(line)
|
|
t.Logf("read %s into block %+v", line, b)
|
|
t.Logf("XY coords for %+v are : %+v", b, b.getXY())
|
|
}
|
|
}
|
|
|
|
func TestReadFile(t *testing.T) {
|
|
filename := "example"
|
|
// filename := "input"
|
|
blocks := ReadBlockFile(filename)
|
|
|
|
byZ := BlocksByZ(blocks)
|
|
for z, zBlocks := range byZ {
|
|
zBlocksLine := ""
|
|
for _, block := range zBlocks {
|
|
zBlocksLine += block.String()
|
|
}
|
|
t.Logf("for level %d blocks %+v", z, zBlocksLine)
|
|
}
|
|
}
|