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

Function TestHTTPClient_Post_Success

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

Source from the content-addressed store, hash-verified

135}
136
137func 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
167func TestHTTPClient_Post_WithCSRFToken(t *testing.T) {
168 // Create test server

Callers

nothing calls this directly

Calls 8

PostMethod · 0.95
NewTestLoggerFunction · 0.92
NewHTTPClientFunction · 0.85
HeaderMethod · 0.80
ClientMethod · 0.80
GetMethod · 0.65
SetMethod · 0.65
CloseMethod · 0.65

Tested by

no test coverage detected