From 253504a0947e0eb734e47d1b869e1a674d21655b Mon Sep 17 00:00:00 2001 From: Jesse Duffield Date: Sat, 23 Oct 2021 18:17:35 +1100 Subject: associate random colours with authors --- pkg/utils/slice.go | 7 +++++++ pkg/utils/slice_test.go | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) (limited to 'pkg/utils') diff --git a/pkg/utils/slice.go b/pkg/utils/slice.go index 48acdbd2d..0ee8dec66 100644 --- a/pkg/utils/slice.go +++ b/pkg/utils/slice.go @@ -144,3 +144,10 @@ func Reverse(values []string) []string { } return result } + +func LimitStr(value string, limit int) string { + if len(value) > limit { + return value[:limit] + } + return value +} diff --git a/pkg/utils/slice_test.go b/pkg/utils/slice_test.go index 3636f44cb..b5919b3e6 100644 --- a/pkg/utils/slice_test.go +++ b/pkg/utils/slice_test.go @@ -248,3 +248,51 @@ func TestReverse(t *testing.T) { } } } + +func TestLimitStr(t *testing.T) { + for _, test := range []struct { + values string + limit int + want string + }{ + { + values: "", + limit: 10, + want: "", + }, + { + values: "", + limit: 0, + want: "", + }, + { + values: "a", + limit: 1, + want: "a", + }, + { + values: "ab", + limit: 2, + want: "ab", + }, + { + values: "abc", + limit: 3, + want: "abc", + }, + { + values: "abcd", + limit: 3, + want: "abc", + }, + { + values: "abcde", + limit: 3, + want: "abc", + }, + } { + if got := LimitStr(test.values, test.limit); !assert.EqualValues(t, got, test.want) { + t.Errorf("LimitString(%v, %d) = %v; want %v", test.values, test.limit, got, test.want) + } + } +} -- cgit v1.2.3