package main
import (
"os"
"testing"
)
func readTestInput() []Deck {
file, _ := os.Open("input_test.txt")
defer file.Close()
return readInput(file)
}
func TestShouldReadInput(t *testing.T) {
input := readTestInput()
expected := Deck{9, 2, 6, 3, 1}
if len(expected) != len(input[0]) {
t.Errorf("did not read input correctly, length does not match")
}
for i := range input[0] {
if expected[i] != input[0][i] {
t.Errorf("did not read input correctly, did not match")
}
}
}
func TestTask1ShouldFindResult(t *testing.T) {
input := readTestInput()
expect := 306
result := Task1(input, true)
if result != expect {
t.Errorf("got %d, expected %d", result, expect)
}
}
func TestTask2ShouldFindResult(t *testing.T) {
input := readTestInput()
expect := 291
result := Task2(input, true)
if result != expect {
t.Errorf("got %d, expected %d", result, expect)
}
}