From 3569bcd48594d9141e713b9ca5f91a0f3c401e80 Mon Sep 17 00:00:00 2001 From: Fabian Becker Date: Mon, 3 Jan 2022 17:17:14 +0100 Subject: [PATCH] Add package arrays --- arrays/sum.go | 9 +++++++++ arrays/sum_test.go | 29 +++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 arrays/sum.go create mode 100644 arrays/sum_test.go diff --git a/arrays/sum.go b/arrays/sum.go new file mode 100644 index 0000000..78c8998 --- /dev/null +++ b/arrays/sum.go @@ -0,0 +1,9 @@ +package main + +func Sum(numbers []int) int { + sum := 0 + for _, n := range numbers { + sum += n + } + return sum +} diff --git a/arrays/sum_test.go b/arrays/sum_test.go new file mode 100644 index 0000000..f94c4ff --- /dev/null +++ b/arrays/sum_test.go @@ -0,0 +1,29 @@ +package main + +import "testing" + +func TestSum(t *testing.T) { + + t.Run("collection of 5 numbers", func(t *testing.T) { + numbers := []int{1, 2, 3, 4, 5} + + got := Sum(numbers) + want := 15 + + if got != want { + t.Errorf("got %d want %d given, %v", got, want, numbers) + } + }) + + t.Run("collection of any size", func(t *testing.T) { + numbers := []int{1, 2, 3} + + got := Sum(numbers) + want := 6 + + if got != want { + t.Errorf("got %d want %d given, %v", got, want, numbers) + } + }) + +}