| 161 | } |
| 162 | |
| 163 | func TestCreateTopicsResponse(t *testing.T) { |
| 164 | supportedVersions := []apiVersion{v0, v1, v2} |
| 165 | for _, v := range supportedVersions { |
| 166 | item := createTopicsResponse{ |
| 167 | v: v, |
| 168 | TopicErrors: []createTopicsResponseTopicError{ |
| 169 | { |
| 170 | v: v, |
| 171 | Topic: "topic", |
| 172 | ErrorCode: 2, |
| 173 | }, |
| 174 | }, |
| 175 | } |
| 176 | |
| 177 | b := bytes.NewBuffer(nil) |
| 178 | w := &writeBuffer{w: b} |
| 179 | item.writeTo(w) |
| 180 | |
| 181 | found := createTopicsResponse{v: v} |
| 182 | remain, err := (&found).readFrom(bufio.NewReader(b), b.Len()) |
| 183 | if err != nil { |
| 184 | t.Error(err) |
| 185 | t.FailNow() |
| 186 | } |
| 187 | if remain != 0 { |
| 188 | t.Errorf("expected 0 remain, got %v", remain) |
| 189 | t.FailNow() |
| 190 | } |
| 191 | if !reflect.DeepEqual(item, found) { |
| 192 | t.Error("expected item and found to be the same") |
| 193 | t.FailNow() |
| 194 | } |
| 195 | } |
| 196 | } |