advent-of-code/2023/day-1/main_test.go
Dan Anglin 86fd297d5b
refactor(Day 1): Updated code structure for Day 1
- Moved parts 1 and 2 under one directory.
- Updated test suite for Day 1.
2023-12-04 18:43:57 +00:00

50 lines
1 KiB
Go

package main
import (
"strings"
"testing"
)
func TestDay1Trebuchet(t *testing.T) {
t.Run("Test the solution for Part 1", testPartOneCalculateSumCalibrationValues)
t.Run("Test the solution for Part 2", testPartTwoCalculateSumCalibrationValues)
}
func testPartOneCalculateSumCalibrationValues(t *testing.T) {
testStr := `
1abc2
pqr3stu8vwx
a1b2c3d4e5f
treb7uchet
`
document := strings.Split(testStr, "\n")
got := partOneCalculateSumCalibrationValues(document)
want := 142
if want != got {
t.Errorf("Unexpected value returned from partOneCalculateSumCalibrationValues(); want %d, got %d", want, got)
}
}
func testPartTwoCalculateSumCalibrationValues(t *testing.T) {
testStr := `
two1nine
eightwothree
abcone2threexyz
xtwone3four
4nineeightseven2
zoneight234
7pqrstsixteen
`
document := strings.Split(testStr, "\n")
got := partTwoCalculateSumCalibrationValues(document)
want := 281
if want != got {
t.Errorf("Unexpected value returned from calculateSumCalibrationValues(); want %d, got %d", want, got)
}
}