summaryrefslogtreecommitdiffstats
path: root/pkg/utils
diff options
context:
space:
mode:
authorJesse Duffield <jessedduffield@gmail.com>2021-10-23 18:17:35 +1100
committerJesse Duffield <jessedduffield@gmail.com>2021-10-30 18:26:06 +1100
commit253504a0947e0eb734e47d1b869e1a674d21655b (patch)
tree99072e4e656d7c37dffa8f489c112ef3e27f8584 /pkg/utils
parentf704707d291387b2c1d7432c7700fb5398432f18 (diff)
associate random colours with authors
Diffstat (limited to 'pkg/utils')
-rw-r--r--pkg/utils/slice.go7
-rw-r--r--pkg/utils/slice_test.go48
2 files changed, 55 insertions, 0 deletions
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)
+ }
+ }
+}