From 1c1f2a96bac276a171f33b2dc6f42defc4afcb0a Mon Sep 17 00:00:00 2001 From: "sweep-ai[bot]" <128439645+sweep-ai[bot]@users.noreply.github.com> Date: Wed, 18 Oct 2023 21:39:01 +0800 Subject: [PATCH] feat: Add unit test for RemoveRepeatedElementsInLi (#1223) Co-authored-by: sweep-ai[bot] <128439645+sweep-ai[bot]@users.noreply.github.com> --- tests/user_test.go | 51 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 tests/user_test.go diff --git a/tests/user_test.go b/tests/user_test.go new file mode 100644 index 000000000..5278f27f1 --- /dev/null +++ b/tests/user_test.go @@ -0,0 +1,51 @@ +package cache_test + +import ( + "reflect" + "testing" + + "github.com/openimsdk/open-im-server/v3/pkg/common/db/cache" +) + +func TestRemoveRepeatedElementsInList(t *testing.T) { + testCases := []struct { + name string + input []string + expected []string + }{ + { + name: "No duplicates", + input: []string{"a", "b", "c"}, + expected: []string{"a", "b", "c"}, + }, + { + name: "All duplicates", + input: []string{"a", "a", "a"}, + expected: []string{"a"}, + }, + { + name: "Some duplicates", + input: []string{"a", "b", "a", "c", "b"}, + expected: []string{"a", "b", "c"}, + }, + { + name: "Empty list", + input: []string{}, + expected: []string{}, + }, + { + name: "Single element", + input: []string{"a"}, + expected: []string{"a"}, + }, + } + + for _, tc := range testCases { + t.Run(tc.name, func(t *testing.T) { + result := cache.RemoveRepeatedElementsInList(tc.input) + if !reflect.DeepEqual(result, tc.expected) { + t.Errorf("expected %v, got %v", tc.expected, result) + } + }) + } +}