package main import ( "testing" "github.com/alexchao26/advent-of-code-go/util" ) var example = `sesenwnenenewseeswwswswwnenewsewsw neeenesenwnwwswnenewnwwsewnenwseswesw seswneswswsenwwnwse nwnwneseeswswnenewneswwnewseswneseene swweswneswnenwsewnwneneseenw eesenwseswswnenwswnwnwsewwnwsene sewnenenenesenwsewnenwwwse wenwwweseeeweswwwnwwe wsweesenenewnwwnwsenewsenwwsesesenwne neeswseenwwswnwswswnw nenwswwsewswnenenewsenwsenwnesesenew enewnwewneswsewnwswenweswnenwsenwsw sweneswneswneneenwnewenewwneswswnese swwesenesewenwneswnwwneseswwne enesenwswwswneneswsenwnewswseenwsese wnwnesenesenenwwnenwsewesewsesesew nenewswnwewswnenesenwnesewesw eneswnwswnwsenenwnwnwwseeswneewsenese neswnwewnwnwseenwseesewsenwsweewe wseweeenwnesenwwwswnew` func Test_part1(t *testing.T) { tests := []struct { name string input string part int want int }{ {"part1_example", example, 1, 10}, {"part1_actual", util.ReadFile("input.txt"), 1, 277}, {"part2_example", example, 2, 2208}, {"part2_actual", util.ReadFile("input.txt"), 2, 3531}, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { if got := part1(tt.input, tt.part); got != tt.want { t.Errorf("part1() = %v, want %v", got, tt.want) } }) } }