func testGetSrvKeyspace(t *testing.T, conn *vtgateconn.VTGateConn) { want := &topodatapb.SrvKeyspace{ Partitions: []*topodatapb.SrvKeyspace_KeyspacePartition{ &topodatapb.SrvKeyspace_KeyspacePartition{ ServedType: topodatapb.TabletType_REPLICA, ShardReferences: []*topodatapb.ShardReference{ &topodatapb.ShardReference{ Name: "shard0", KeyRange: &topodatapb.KeyRange{ Start: []byte{0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, End: []byte{0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, }, }, }, }, }, ShardingColumnName: "sharding_column_name", ShardingColumnType: topodatapb.KeyspaceIdType_UINT64, ServedFrom: []*topodatapb.SrvKeyspace_ServedFrom{ &topodatapb.SrvKeyspace_ServedFrom{ TabletType: topodatapb.TabletType_MASTER, Keyspace: "other_keyspace", }, }, SplitShardCount: 128, } got, err := conn.GetSrvKeyspace(context.Background(), "big") if err != nil { t.Fatalf("GetSrvKeyspace error: %v", err) } if !proto.Equal(got, want) { t.Errorf("GetSrvKeyspace() = %v, want %v", proto.MarshalTextString(got), proto.MarshalTextString(want)) } }