1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
//go:build !functional
package sarama
import "testing"
var (
emptyDeleteGroupsRequest = []byte{0, 0, 0, 0}
singleDeleteGroupsRequest = []byte{
0, 0, 0, 1, // 1 group
0, 3, 'f', 'o', 'o', // group name: foo
}
doubleDeleteGroupsRequest = []byte{
0, 0, 0, 2, // 2 groups
0, 3, 'f', 'o', 'o', // group name: foo
0, 3, 'b', 'a', 'r', // group name: foo
}
emptyDeleteGroupsRequestV2 = []byte{
1,
0, // empty tagged fields
}
singleDeleteGroupsRequestV2 = []byte{
2, // 1 group
4, 'f', 'o', 'o', // group name: foo
0, // empty tagged fields
}
doubleDeleteGroupsRequestV2 = []byte{
3, // 2 groups
4, 'f', 'o', 'o', // group name: foo
4, 'b', 'a', 'r', // group name: foo
0, // empty tagged fields
}
)
func TestDeleteGroupsRequest(t *testing.T) {
var request *DeleteGroupsRequest
request = new(DeleteGroupsRequest)
testRequest(t, "no groups", request, emptyDeleteGroupsRequest)
request = new(DeleteGroupsRequest)
request.AddGroup("foo")
testRequest(t, "one group", request, singleDeleteGroupsRequest)
request = new(DeleteGroupsRequest)
request.AddGroup("foo")
request.AddGroup("bar")
testRequest(t, "two groups", request, doubleDeleteGroupsRequest)
}
func TestDeleteGroupsRequestV2(t *testing.T) {
var request *DeleteGroupsRequest
request = &DeleteGroupsRequest{
Version: 2,
}
testRequest(t, "no groups", request, emptyDeleteGroupsRequestV2)
request = &DeleteGroupsRequest{
Version: 2,
}
request.AddGroup("foo")
testRequest(t, "one group", request, singleDeleteGroupsRequestV2)
request = &DeleteGroupsRequest{
Version: 2,
}
request.AddGroup("foo")
request.AddGroup("bar")
testRequest(t, "two groups", request, doubleDeleteGroupsRequestV2)
}
|