MCPcopy Create free account
hub / github.com/datastax/cql-proxy / TestClientConn_SetKeyspace

Function TestClientConn_SetKeyspace

proxycore/clientconn_test.go:238–284  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

236}
237
238func TestClientConn_SetKeyspace(t *testing.T) {
239 server := &MockServer{
240 Handlers: NewMockRequestHandlers(MockRequestHandlers{
241 primitive.OpCodeQuery: func(cl *MockClient, frm *frame.Frame) message.Message {
242 if msg := cl.InterceptQuery(frm.Header, frm.Body.Message.(*message.Query)); msg != nil {
243 return msg
244 } else {
245 return &message.Invalid{ErrorMessage: "Doesn't exist"}
246 }
247 },
248 }),
249 }
250
251 const supported = primitive.ProtocolVersion4
252
253 ctx, cancel := context.WithCancel(context.Background())
254 defer cancel()
255
256 err := server.Serve(ctx, supported, MockHost{
257 IP: "127.0.0.1",
258 Port: 9042,
259 HostID: mockHostID,
260 }, nil)
261 require.NoError(t, err)
262
263 cl, err := ConnectClient(ctx, NewEndpoint("127.0.0.1:9042"), ClientConnConfig{})
264 require.NoError(t, err)
265
266 _, err = cl.Handshake(ctx, supported, nil)
267 require.NoError(t, err)
268
269 _, err = cl.Query(ctx, supported, &message.Query{
270 Query: "SELECT * FROM local",
271 })
272 if assert.Error(t, err) {
273 assert.Contains(t, err.Error(), "Doesn't exist")
274 }
275
276 err = cl.SetKeyspace(ctx, supported, "system")
277 require.NoError(t, err)
278
279 rs, err := cl.Query(ctx, supported, &message.Query{
280 Query: "SELECT * FROM local",
281 })
282 require.NoError(t, err)
283 require.Equal(t, rs.RowCount(), 1)
284}
285
286func TestClientConn_Inflight(t *testing.T) {
287 server := &MockServer{

Callers

nothing calls this directly

Calls 10

ServeMethod · 0.95
NewMockRequestHandlersFunction · 0.85
ConnectClientFunction · 0.85
NewEndpointFunction · 0.85
InterceptQueryMethod · 0.80
HandshakeMethod · 0.80
QueryMethod · 0.80
SetKeyspaceMethod · 0.80
RowCountMethod · 0.80
ErrorMethod · 0.45

Tested by

no test coverage detected