mirror of
https://github.com/golang/go
synced 2024-11-12 07:00:21 -07:00
bytes: merge explodetests into splittests
splittests already contains most of the tests that cover explode. Add the missing ones and skip the append test for empty results which would otherwise lead to an "index out of range" panic. Change-Id: I2cb922282d2676be9ef85f186513075ae17c0243 Reviewed-on: https://go-review.googlesource.com/c/go/+/170126 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
parent
e014184c43
commit
94507d2213
@ -677,34 +677,6 @@ func BenchmarkCountSingle(b *testing.B) {
|
||||
})
|
||||
}
|
||||
|
||||
type ExplodeTest struct {
|
||||
s string
|
||||
n int
|
||||
a []string
|
||||
}
|
||||
|
||||
var explodetests = []ExplodeTest{
|
||||
{"", -1, []string{}},
|
||||
{abcd, -1, []string{"a", "b", "c", "d"}},
|
||||
{faces, -1, []string{"☺", "☻", "☹"}},
|
||||
{abcd, 2, []string{"a", "bcd"}},
|
||||
}
|
||||
|
||||
func TestExplode(t *testing.T) {
|
||||
for _, tt := range explodetests {
|
||||
a := SplitN([]byte(tt.s), nil, tt.n)
|
||||
result := sliceOfString(a)
|
||||
if !eq(result, tt.a) {
|
||||
t.Errorf(`Explode("%s", %d) = %v; want %v`, tt.s, tt.n, result, tt.a)
|
||||
continue
|
||||
}
|
||||
s := Join(a, []byte{})
|
||||
if string(s) != tt.s {
|
||||
t.Errorf(`Join(Explode("%s", %d), "") = "%s"`, tt.s, tt.n, s)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
type SplitTest struct {
|
||||
s string
|
||||
sep string
|
||||
@ -713,7 +685,9 @@ type SplitTest struct {
|
||||
}
|
||||
|
||||
var splittests = []SplitTest{
|
||||
{"", "", -1, []string{}},
|
||||
{abcd, "a", 0, nil},
|
||||
{abcd, "", 2, []string{"a", "bcd"}},
|
||||
{abcd, "a", -1, []string{"", "bcd"}},
|
||||
{abcd, "z", -1, []string{"abcd"}},
|
||||
{abcd, "", -1, []string{"a", "b", "c", "d"}},
|
||||
@ -743,7 +717,7 @@ func TestSplit(t *testing.T) {
|
||||
t.Errorf(`Split(%q, %q, %d) = %v; want %v`, tt.s, tt.sep, tt.n, result, tt.a)
|
||||
continue
|
||||
}
|
||||
if tt.n == 0 {
|
||||
if tt.n == 0 || len(a) == 0 {
|
||||
continue
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user