@@ -64,6 +64,45 @@ func TestFirstUpper(t *testing.T) {
6464 }
6565}
6666
67+ func TestHasStringsPrefix (t * testing.T ) {
68+ for i , this := range []struct {
69+ s []string
70+ prefix []string
71+ expect bool
72+ }{
73+ {[]string {"a" }, []string {"a" }, true },
74+ {[]string {}, []string {}, true },
75+ {[]string {"a" , "b" , "c" }, []string {"a" , "b" }, true },
76+ {[]string {"d" , "a" , "b" , "c" }, []string {"a" , "b" }, false },
77+ {[]string {"abra" , "ca" , "dabra" }, []string {"abra" , "ca" }, true },
78+ {[]string {"abra" , "ca" }, []string {"abra" , "ca" , "dabra" }, false },
79+ } {
80+ result := HasStringsPrefix (this .s , this .prefix )
81+ if result != this .expect {
82+ t .Fatalf ("[%d] got %t but expected %t" , i , result , this .expect )
83+ }
84+ }
85+ }
86+
87+ func TestHasStringsSuffix (t * testing.T ) {
88+ for i , this := range []struct {
89+ s []string
90+ suffix []string
91+ expect bool
92+ }{
93+ {[]string {"a" }, []string {"a" }, true },
94+ {[]string {}, []string {}, true },
95+ {[]string {"a" , "b" , "c" }, []string {"b" , "c" }, true },
96+ {[]string {"abra" , "ca" , "dabra" }, []string {"abra" , "ca" }, false },
97+ {[]string {"abra" , "ca" , "dabra" }, []string {"ca" , "dabra" }, true },
98+ } {
99+ result := HasStringsSuffix (this .s , this .suffix )
100+ if result != this .expect {
101+ t .Fatalf ("[%d] got %t but expected %t" , i , result , this .expect )
102+ }
103+ }
104+ }
105+
67106var containsTestText = (`На берегу пустынных волн
68107Стоял он, дум великих полн,
69108И вдаль глядел. Пред ним широко
0 commit comments