From 14d71a654a5f1877ad59a407fd9f1780c92b9043 Mon Sep 17 00:00:00 2001 From: Andrey Smirnov Date: Thu, 26 Dec 2013 00:37:24 +0400 Subject: [PATCH] Check string in slice. --- utils/list.go | 11 ++++++++++- utils/list_test.go | 5 +++++ 2 files changed, 15 insertions(+), 1 deletion(-) 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) +}