MCPcopy Create free account
hub / github.com/devnullvoid/pvetui / TestHTTPClient_GetWithRetry_MaxRetriesExceeded

Function TestHTTPClient_GetWithRetry_MaxRetriesExceeded

pkg/api/http_test.go:430–449  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

428}
429
430func TestHTTPClient_GetWithRetry_MaxRetriesExceeded(t *testing.T) {
431 attemptCount := 0
432
433 server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
434 attemptCount++
435
436 w.WriteHeader(http.StatusInternalServerError)
437 _, _ = w.Write([]byte("Server error"))
438 }))
439 defer server.Close()
440
441 client := NewHTTPClient(server.Client(), server.URL, testutils.NewTestLogger())
442
443 var result map[string]interface{}
444 err := client.GetWithRetry(context.Background(), "/test", &result, 2)
445
446 require.Error(t, err)
447 assert.Contains(t, err.Error(), "request failed after 2 attempts")
448 assert.Equal(t, 2, attemptCount)
449}
450
451func TestHTTPClient_shouldRetry(t *testing.T) {
452 client := NewHTTPClient(&http.Client{}, "https://test.example.com", testutils.NewTestLogger())

Callers

nothing calls this directly

Calls 6

GetWithRetryMethod · 0.95
NewTestLoggerFunction · 0.92
NewHTTPClientFunction · 0.85
ClientMethod · 0.80
CloseMethod · 0.65
ErrorMethod · 0.65

Tested by

no test coverage detected