mirror of
https://github.com/Threnklyn/advent-of-code-go.git
synced 2026-06-04 03:08:27 +02:00
152 lines
1.9 KiB
Go
152 lines
1.9 KiB
Go
package main
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/alexchao26/advent-of-code-go/util"
|
|
)
|
|
|
|
func Test_part1(t *testing.T) {
|
|
tests := []struct {
|
|
name string
|
|
input string
|
|
want int
|
|
}{
|
|
{"example", example, 20899048083289},
|
|
{"actual", util.ReadFile("input.txt"), 29125888761511},
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
if got := part1(tt.input); got != tt.want {
|
|
t.Errorf("part1() = %v, want %v", got, tt.want)
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
func Test_part2(t *testing.T) {
|
|
tests := []struct {
|
|
name string
|
|
input string
|
|
want int
|
|
}{
|
|
{"example", example, 273},
|
|
{"actual", util.ReadFile("input.txt"), 2219},
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
if got := part2(tt.input); got != tt.want {
|
|
t.Errorf("part2() = %v, want %v", got, tt.want)
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
var example = `Tile 2311:
|
|
..##.#..#.
|
|
##..#.....
|
|
#...##..#.
|
|
####.#...#
|
|
##.##.###.
|
|
##...#.###
|
|
.#.#.#..##
|
|
..#....#..
|
|
###...#.#.
|
|
..###..###
|
|
|
|
Tile 1951:
|
|
#.##...##.
|
|
#.####...#
|
|
.....#..##
|
|
#...######
|
|
.##.#....#
|
|
.###.#####
|
|
###.##.##.
|
|
.###....#.
|
|
..#.#..#.#
|
|
#...##.#..
|
|
|
|
Tile 1171:
|
|
####...##.
|
|
#..##.#..#
|
|
##.#..#.#.
|
|
.###.####.
|
|
..###.####
|
|
.##....##.
|
|
.#...####.
|
|
#.##.####.
|
|
####..#...
|
|
.....##...
|
|
|
|
Tile 1427:
|
|
###.##.#..
|
|
.#..#.##..
|
|
.#.##.#..#
|
|
#.#.#.##.#
|
|
....#...##
|
|
...##..##.
|
|
...#.#####
|
|
.#.####.#.
|
|
..#..###.#
|
|
..##.#..#.
|
|
|
|
Tile 1489:
|
|
##.#.#....
|
|
..##...#..
|
|
.##..##...
|
|
..#...#...
|
|
#####...#.
|
|
#..#.#.#.#
|
|
...#.#.#..
|
|
##.#...##.
|
|
..##.##.##
|
|
###.##.#..
|
|
|
|
Tile 2473:
|
|
#....####.
|
|
#..#.##...
|
|
#.##..#...
|
|
######.#.#
|
|
.#...#.#.#
|
|
.#########
|
|
.###.#..#.
|
|
########.#
|
|
##...##.#.
|
|
..###.#.#.
|
|
|
|
Tile 2971:
|
|
..#.#....#
|
|
#...###...
|
|
#.#.###...
|
|
##.##..#..
|
|
.#####..##
|
|
.#..####.#
|
|
#..#.#..#.
|
|
..####.###
|
|
..#.#.###.
|
|
...#.#.#.#
|
|
|
|
Tile 2729:
|
|
...#.#.#.#
|
|
####.#....
|
|
..#.#.....
|
|
....#..#.#
|
|
.##..##.#.
|
|
.#.####...
|
|
####.#.#..
|
|
##.####...
|
|
##..#.##..
|
|
#.##...##.
|
|
|
|
Tile 3079:
|
|
#.#.#####.
|
|
.#..######
|
|
..#.......
|
|
######....
|
|
####.#..#.
|
|
.#...#.##.
|
|
#.#####.##
|
|
..#.###...
|
|
..#.......
|
|
..#.###...`
|