From 83f6db5e3394c580ecf3a64b97008e7a4625df5a Mon Sep 17 00:00:00 2001 From: Kharec Date: Thu, 4 Dec 2025 20:54:43 +0100 Subject: [PATCH] test: unit tests case for p1 --- internal/2015/DayTwelve/code_test.go | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 internal/2015/DayTwelve/code_test.go diff --git a/internal/2015/DayTwelve/code_test.go b/internal/2015/DayTwelve/code_test.go new file mode 100644 index 0000000..c7f7757 --- /dev/null +++ b/internal/2015/DayTwelve/code_test.go @@ -0,0 +1,29 @@ +package daytwelve + +import "testing" + +func TestPartOne(t *testing.T) { + tests := []struct { + name string + input string + expected int + }{ + {"[1,2,3]", "[1,2,3]", 6}, + {"{\"a\":2,\"b\":4}", "{\"a\":2,\"b\":4}", 6}, + {"[[[3]]]", "[[[3]]]", 3}, + {"{\"a\":{\"b\":4},\"c\":-1}", "{\"a\":{\"b\":4},\"c\":-1}", 3}, + {"{\"a\":[-1,1]}", "{\"a\":[-1,1]}", 0}, + {"[-1,{\"a\":1}]", "[-1,{\"a\":1}]", 0}, + {"[]", "[]", 0}, + {"{}", "{}", 0}, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got := PartOne([]string{tt.input}) + if got != tt.expected { + t.Errorf("PartOne() = %d, want %d", got, tt.expected) + } + }) + } +}