diff --git a/utils/list.go b/utils/list.go index 5907350b..13da7181 100644 --- a/utils/list.go +++ b/utils/list.go @@ -51,5 +51,14 @@ func StrMapsEqual(m1, m2 map[string]string) bool { } return true - +} + +// StrSliceHasItem checks item for presence in slice +func StrSliceHasItem(s []string, item string) bool { + for _, v := range s { + if v == item { + return true + } + } + return false } diff --git a/utils/list_test.go b/utils/list_test.go index 01817054..a7b8a2c1 100644 --- a/utils/list_test.go +++ b/utils/list_test.go @@ -37,3 +37,8 @@ func (s *ListSuite) TestStrMapsEqual(c *C) { c.Check(StrMapsEqual(map[string]string{"a": "1", "b": "2"}, map[string]string{"a": "1", "c": "2"}), Equals, false) c.Check(StrMapsEqual(map[string]string{"a": "1", "b": "2"}, map[string]string{"a": "1"}), Equals, false) } + +func (s *ListSuite) TestStrSliceHasIteml(c *C) { + c.Check(StrSliceHasItem([]string{"a", "b"}, "b"), Equals, true) + c.Check(StrSliceHasItem([]string{"a", "b"}, "c"), Equals, false) +}