(t *testing.T)
| 280 | } |
| 281 | |
| 282 | func TestProxy_DseVersion(t *testing.T) { |
| 283 | const dseVersion = "6.8.3" |
| 284 | const protocol = primitive.ProtocolVersion4 |
| 285 | |
| 286 | ctx, cancel := context.WithCancel(context.Background()) |
| 287 | defer cancel() |
| 288 | |
| 289 | // Fake a peer so that "SELECT ... system.peers" returns at least one row |
| 290 | tester, proxyContactPoint, err := setupProxyTestWithConfig(ctx, 1, &proxyTestConfig{ |
| 291 | dseVersion: dseVersion, |
| 292 | rpcAddr: "127.0.0.1", |
| 293 | peers: []PeerConfig{{ |
| 294 | RPCAddr: "127.0.0.2", |
| 295 | }}}) |
| 296 | defer func() { |
| 297 | cancel() |
| 298 | tester.shutdown() |
| 299 | }() |
| 300 | require.NoError(t, err) |
| 301 | |
| 302 | cl := connectTestClient(t, ctx, proxyContactPoint) |
| 303 | |
| 304 | checkDseVersion := func(resp *frame.Frame, err error) { |
| 305 | require.NoError(t, err) |
| 306 | assert.Equal(t, primitive.OpCodeResult, resp.Header.OpCode) |
| 307 | rows, ok := resp.Body.Message.(*message.RowsResult) |
| 308 | assert.True(t, ok, "expected rows result") |
| 309 | |
| 310 | rs := proxycore.NewResultSet(rows, protocol) |
| 311 | require.GreaterOrEqual(t, rs.RowCount(), 1) |
| 312 | actualDseVersion, err := rs.Row(0).StringByName("dse_version") |
| 313 | require.NoError(t, err) |
| 314 | assert.Equal(t, dseVersion, actualDseVersion) |
| 315 | } |
| 316 | |
| 317 | checkDseVersion(cl.SendAndReceive(ctx, frame.NewFrame(protocol, 0, &message.Query{Query: "SELECT dse_version FROM system.local"}))) |
| 318 | checkDseVersion(cl.SendAndReceive(ctx, frame.NewFrame(primitive.ProtocolVersion4, 0, &message.Query{Query: "SELECT dse_version FROM system.peers"}))) |
| 319 | } |
| 320 | |
| 321 | func TestProxy_UnsupportedCompressionType(t *testing.T) { |
| 322 | ctx, cancel := context.WithCancel(context.Background()) |
nothing calls this directly
no test coverage detected