(t *testing.T)
| 570 | } |
| 571 | |
| 572 | func TestStreamingSearch_badRequest(t *testing.T) { |
| 573 | util.RunIntegrationTests(t, util.TestHarnessConfig{}, func(h *util.TempoHarness) { |
| 574 | h.WaitTracesWritable(t) |
| 575 | |
| 576 | // Send a batch of traces |
| 577 | batch := util.MakeThriftBatch() |
| 578 | require.NoError(t, h.WriteJaegerBatch(batch, "")) |
| 579 | |
| 580 | // Wait for the traces to be written to the WAL |
| 581 | h.WaitTracesQueryable(t, 1) |
| 582 | |
| 583 | // Create gRPC client |
| 584 | grpcClient, ctx, err := h.APIClientGRPC("") |
| 585 | require.NoError(t, err) |
| 586 | |
| 587 | // Send invalid search query (missing operator) |
| 588 | res, err := grpcClient.Search(ctx, &tempopb.SearchRequest{ |
| 589 | Query: "{resource.service.name=article}", |
| 590 | }) |
| 591 | require.NoError(t, err) |
| 592 | |
| 593 | // Expect error on receive |
| 594 | _, err = res.Recv() |
| 595 | require.Error(t, err) |
| 596 | |
| 597 | st, ok := status.FromError(err) |
| 598 | require.True(t, ok) |
| 599 | require.Equal(t, codes.InvalidArgument, st.Code()) |
| 600 | }) |
| 601 | } |
| 602 | |
| 603 | func TestSearchTagValuesV2_badRequest(t *testing.T) { |
| 604 | util.RunIntegrationTests(t, util.TestHarnessConfig{}, func(h *util.TempoHarness) { |
nothing calls this directly
no test coverage detected