コード例 #1
0
ファイル: protobuf_test.go プロジェクト: jchris/indexing
func testKeyVersions(t *testing.T, vb *common.VbKeyVersions) {
	var data []byte
	var err error
	var payload interface{}

	vbsRef := []*common.VbKeyVersions{vb}
	if data, err = protobufEncode(vbsRef); err != nil {
		t.Fatal(err)
	}
	if payload, err = protobufDecode(data); err != nil {
		t.Fatal(err)
	}

	val, ok := payload.([]*protobuf.VbKeyVersions)
	if ok == false {
		t.Fatal("expected slice of reference to KeyVersions object")
	}
	vbs := protobuf2VbKeyVersions(val)
	for i, vb := range vbsRef {
		if vb.Equal(vbs[i]) == false {
			t.Fatal("failed protobuf encoding")
		}
	}
}