(t *testing.T)
| 135 | } |
| 136 | |
| 137 | func TestHTTPClient_Post_Success(t *testing.T) { |
| 138 | // Create test server |
| 139 | server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { |
| 140 | assert.Equal(t, "POST", r.Method) |
| 141 | assert.Equal(t, "application/json", r.Header.Get("Content-Type")) |
| 142 | |
| 143 | // Read and verify request body |
| 144 | var requestData map[string]interface{} |
| 145 | err := json.NewDecoder(r.Body).Decode(&requestData) |
| 146 | require.NoError(t, err) |
| 147 | assert.Equal(t, "test-value", requestData["key"]) |
| 148 | |
| 149 | response := map[string]interface{}{"created": true} |
| 150 | |
| 151 | w.Header().Set("Content-Type", "application/json") |
| 152 | _ = json.NewEncoder(w).Encode(response) |
| 153 | })) |
| 154 | defer server.Close() |
| 155 | |
| 156 | client := NewHTTPClient(server.Client(), server.URL, testutils.NewTestLogger()) |
| 157 | |
| 158 | postData := map[string]interface{}{"key": "test-value"} |
| 159 | |
| 160 | var result map[string]interface{} |
| 161 | err := client.Post(context.Background(), "/test", postData, &result) |
| 162 | |
| 163 | require.NoError(t, err) |
| 164 | assert.True(t, result["created"].(bool)) |
| 165 | } |
| 166 | |
| 167 | func TestHTTPClient_Post_WithCSRFToken(t *testing.T) { |
| 168 | // Create test server |
nothing calls this directly
no test coverage detected