From bd36605f3e26bb2c9dca0c13d17c8ee75e8dc594 Mon Sep 17 00:00:00 2001 From: Dan Anglin Date: Mon, 4 Dec 2023 18:02:44 +0000 Subject: [PATCH] tests: update test suite for Day 2 --- 2023/day-2/game_test.go | 2 +- 2023/day-2/main_test.go | 48 ++++++++++++++++++++++++----------------- 2 files changed, 29 insertions(+), 21 deletions(-) diff --git a/2023/day-2/game_test.go b/2023/day-2/game_test.go index dbb2356..91dbfa4 100644 --- a/2023/day-2/game_test.go +++ b/2023/day-2/game_test.go @@ -5,7 +5,7 @@ import ( "testing" ) -func TestParseGame(t *testing.T) { +func testParseGame(t *testing.T) { table := []struct { testGame string want Game diff --git a/2023/day-2/main_test.go b/2023/day-2/main_test.go index da67fab..d531401 100644 --- a/2023/day-2/main_test.go +++ b/2023/day-2/main_test.go @@ -5,7 +5,8 @@ import ( "testing" ) -var testStr = ` +func TestDay2CubeConundrum(t *testing.T) { + testGames := ` Game 1: 3 blue, 4 red; 1 red, 2 green, 6 blue; 2 green Game 2: 1 blue, 2 green; 3 green, 4 blue, 1 red; 1 green, 1 blue Game 3: 8 green, 6 blue, 20 red; 5 blue, 4 red, 13 green; 5 green, 1 red @@ -13,32 +14,39 @@ Game 4: 1 green, 3 red, 6 blue; 3 green, 6 red; 3 green, 15 blue, 14 red Game 5: 6 red, 1 blue, 3 green; 2 blue, 1 red, 2 green ` -func TestSumOfGameIDs(t *testing.T) { - games := strings.Split(testStr, "\n") + games := strings.Split(testGames, "\n") - got, err := sumOfGameIDs(games) - if err != nil { - t.Fatalf("Received an error after running sumOfGameIDs(); %v\n", err) - } + t.Run("Test the game parsing functionality", testParseGame) + t.Run("Test calculating the sum of Game IDs", testSumOfGameIDs(games)) + t.Run("Test calculating the sum of the Power of Cubes", testSumOfThePowerOfTheCubes(games)) +} - want := 8 +func testSumOfGameIDs(games []string) func(t *testing.T) { + return func(t *testing.T) { + got, err := sumOfGameIDs(games) + if err != nil { + t.Fatalf("Received an error after running sumOfGameIDs(); %v\n", err) + } - if got != want { - t.Errorf("unexpected result received from sumOfGameIDs(); want %d, got %d\n", want, got) + want := 8 + + if got != want { + t.Errorf("unexpected result received from sumOfGameIDs(); want %d, got %d\n", want, got) + } } } -func TestSumOfThePowerOfTheCubes(t *testing.T) { - games := strings.Split(testStr, "\n") +func testSumOfThePowerOfTheCubes(games []string) func(t *testing.T) { + return func(t *testing.T) { + got, err := sumOfThePowerOfTheCubes(games) + if err != nil { + t.Fatalf("Received an error after running sumOfThePowerOfTheCubes(); %v\n", err) + } - got, err := sumOfThePowerOfTheCubes(games) - if err != nil { - t.Fatalf("Received an error after running sumOfThePowerOfTheCubes(); %v\n", err) - } + want := 2286 - want := 2286 - - if got != want { - t.Errorf("unexpected result received from sumOfThePowerOfTheCubes(); want %d; got %d", want, got) + if got != want { + t.Errorf("unexpected result received from sumOfThePowerOfTheCubes(); want %d; got %d", want, got) + } } }