From bcc4fc3432039f6f136f46a045b97261eec7147f Mon Sep 17 00:00:00 2001 From: Kharec Date: Thu, 4 Dec 2025 21:00:19 +0100 Subject: [PATCH] test: add unit testing for part two --- internal/2015/DayTwelve/code_test.go | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/internal/2015/DayTwelve/code_test.go b/internal/2015/DayTwelve/code_test.go index c7f7757..2cf4ced 100644 --- a/internal/2015/DayTwelve/code_test.go +++ b/internal/2015/DayTwelve/code_test.go @@ -27,3 +27,25 @@ func TestPartOne(t *testing.T) { }) } } + +func TestPartTwo(t *testing.T) { + tests := []struct { + name string + input string + expected int + }{ + {"[1,2,3]", "[1,2,3]", 6}, + {"[1,{\"c\":\"red\",\"b\":2},3]", "[1,{\"c\":\"red\",\"b\":2},3]", 4}, + {"{\"d\":\"red\",\"e\":[1,2,3,4],\"f\":5}", "{\"d\":\"red\",\"e\":[1,2,3,4],\"f\":5}", 0}, + {"[1,\"red\",5]", "[1,\"red\",5]", 6}, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got := PartTwo([]string{tt.input}) + if got != tt.expected { + t.Errorf("PartTwo() = %d, want %d", got, tt.expected) + } + }) + } +}