(t *testing.T)
| 100 | } |
| 101 | |
| 102 | func TestSchedulerEnqueueWithCancel(t *testing.T) { |
| 103 | scheduler, frontendClient, querierClient := setupScheduler(t, nil, false) |
| 104 | |
| 105 | frontendLoop := initFrontendLoop(t, frontendClient, "frontend-12345") |
| 106 | frontendToScheduler(t, frontendLoop, &schedulerpb.FrontendToScheduler{ |
| 107 | Type: schedulerpb.ENQUEUE, |
| 108 | QueryID: 1, |
| 109 | UserID: "test", |
| 110 | HttpRequest: &httpgrpc.HTTPRequest{Method: "GET", Url: "/hello"}, |
| 111 | }) |
| 112 | |
| 113 | frontendToScheduler(t, frontendLoop, &schedulerpb.FrontendToScheduler{ |
| 114 | Type: schedulerpb.CANCEL, |
| 115 | QueryID: 1, |
| 116 | }) |
| 117 | |
| 118 | querierLoop := initQuerierLoop(t, querierClient, "querier-1") |
| 119 | |
| 120 | verifyQuerierDoesntReceiveRequest(t, querierLoop, 500*time.Millisecond) |
| 121 | verifyNoPendingRequestsLeft(t, scheduler) |
| 122 | } |
| 123 | |
| 124 | func initQuerierLoop(t *testing.T, querierClient schedulerpb.SchedulerForQuerierClient, querier string) schedulerpb.SchedulerForQuerier_QuerierLoopClient { |
| 125 | querierLoop, err := querierClient.QuerierLoop(context.Background()) |
nothing calls this directly
no test coverage detected