(b *testing.B)
| 166 | } |
| 167 | |
| 168 | func Benchmark_Handler(b *testing.B) { |
| 169 | var limits validation.Limits |
| 170 | flagext.DefaultValues(&limits) |
| 171 | overrides := validation.NewOverrides(limits, nil) |
| 172 | |
| 173 | mockHandler := func(context.Context, *cortexpb.WriteRequest) (*cortexpb.WriteResponse, error) { |
| 174 | // Nothing to do. |
| 175 | return &cortexpb.WriteResponse{}, nil |
| 176 | } |
| 177 | testSeriesNums := []int{10, 100, 500, 1000} |
| 178 | for _, seriesNum := range testSeriesNums { |
| 179 | b.Run(fmt.Sprintf("PRW1 with %d series", seriesNum), func(b *testing.B) { |
| 180 | handler := Handler(true, false, 1000000, overrides, nil, mockHandler, nil) |
| 181 | req, err := createPRW1HTTPRequest(seriesNum) |
| 182 | require.NoError(b, err) |
| 183 | |
| 184 | b.ReportAllocs() |
| 185 | |
| 186 | for b.Loop() { |
| 187 | resp := httptest.NewRecorder() |
| 188 | handler.ServeHTTP(resp, req) |
| 189 | assert.Equal(b, http.StatusOK, resp.Code) |
| 190 | req.Body.(*resetReader).Reset() |
| 191 | } |
| 192 | }) |
| 193 | b.Run(fmt.Sprintf("PRW2 with %d series", seriesNum), func(b *testing.B) { |
| 194 | handler := Handler(true, false, 1000000, overrides, nil, mockHandler, nil) |
| 195 | req, err := createPRW2HTTPRequest(seriesNum) |
| 196 | require.NoError(b, err) |
| 197 | |
| 198 | b.ReportAllocs() |
| 199 | |
| 200 | for b.Loop() { |
| 201 | resp := httptest.NewRecorder() |
| 202 | handler.ServeHTTP(resp, req) |
| 203 | assert.Equal(b, http.StatusNoContent, resp.Code) |
| 204 | req.Body.(*resetReader).Reset() |
| 205 | } |
| 206 | }) |
| 207 | } |
| 208 | } |
| 209 | |
| 210 | func Benchmark_convertV2RequestToV1(b *testing.B) { |
| 211 | testSeriesNums := []int{100, 500, 1000} |
nothing calls this directly
no test coverage detected