(t *testing.T)
| 314 | } |
| 315 | |
| 316 | func TestBodyDump_ResponseWithinLimit(t *testing.T) { |
| 317 | e := echo.New() |
| 318 | responseData := "Response data" |
| 319 | req := httptest.NewRequest(http.MethodGet, "/", nil) |
| 320 | rec := httptest.NewRecorder() |
| 321 | c := e.NewContext(req, rec) |
| 322 | |
| 323 | h := func(c *echo.Context) error { |
| 324 | return c.String(http.StatusOK, responseData) |
| 325 | } |
| 326 | |
| 327 | responseBodyDumped := "" |
| 328 | mw, err := BodyDumpConfig{ |
| 329 | Handler: func(c *echo.Context, reqBody, resBody []byte, err error) { |
| 330 | responseBodyDumped = string(resBody) |
| 331 | }, |
| 332 | MaxRequestBytes: 1 * MB, |
| 333 | MaxResponseBytes: 1 * MB, |
| 334 | }.ToMiddleware() |
| 335 | assert.NoError(t, err) |
| 336 | |
| 337 | err = mw(h)(c) |
| 338 | assert.NoError(t, err) |
| 339 | assert.Equal(t, responseData, responseBodyDumped, "Small response should be fully dumped") |
| 340 | assert.Equal(t, responseData, rec.Body.String(), "Client should receive full response") |
| 341 | } |
| 342 | |
| 343 | func TestBodyDump_ResponseExceedsLimit(t *testing.T) { |
| 344 | e := echo.New() |
nothing calls this directly
no test coverage detected
searching dependent graphs…