(t *testing.T)
| 236 | } |
| 237 | |
| 238 | func 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 | |
| 286 | func TestClientConn_Inflight(t *testing.T) { |
| 287 | server := &MockServer{ |
nothing calls this directly
no test coverage detected