(t *testing.T)
| 527 | } |
| 528 | |
| 529 | func TestHTTPClient_MarshalError(t *testing.T) { |
| 530 | server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { |
| 531 | w.WriteHeader(http.StatusOK) |
| 532 | })) |
| 533 | defer server.Close() |
| 534 | |
| 535 | client := NewHTTPClient(server.Client(), server.URL, testutils.NewTestLogger()) |
| 536 | |
| 537 | // Use data that cannot be marshaled to JSON (channel) |
| 538 | invalidData := map[string]interface{}{ |
| 539 | "channel": make(chan int), |
| 540 | } |
| 541 | |
| 542 | var result map[string]interface{} |
| 543 | err := client.Post(context.Background(), "/test", invalidData, &result) |
| 544 | |
| 545 | require.Error(t, err) |
| 546 | assert.Contains(t, err.Error(), "failed to marshal request data") |
| 547 | } |
| 548 | |
| 549 | func TestHTTPClient_NilResult(t *testing.T) { |
| 550 | server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { |
nothing calls this directly
no test coverage detected