Files
advent-of-code-go/2017/day18/main_test.go
T
2020-12-18 23:34:27 -05:00

64 lines
984 B
Go

package main
import (
"testing"
"github.com/alexchao26/advent-of-code-go/util"
)
var example = `set a 1
add a 2
mul a a
mod a 5
snd a
set a 0
rcv a
jgz a -1
set a 1
jgz a -2`
func Test_part1(t *testing.T) {
tests := []struct {
name string
input string
want int
}{
{"example", example, 4},
{"actual", util.ReadFile("input.txt"), 3188},
}
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)
}
})
}
}
// really frail example...
var example2 = `snd 1
snd 2
snd p
rcv a
rcv b
rcv c
rcv d`
func Test_part2(t *testing.T) {
tests := []struct {
name string
input string
want int
}{
{"example", example2, 3},
{"actual", util.ReadFile("input.txt"), 7112},
}
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)
}
})
}
}