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

Function TestHTTPClient_Post_WithCSRFToken

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

Source from the content-addressed store, hash-verified

165}
166
167func TestHTTPClient_Post_WithCSRFToken(t *testing.T) {
168 // Create test server
169 server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
170 assert.Equal(t, "POST", r.Method)
171 assert.Equal(t, "PVEAuthCookie=test-ticket", r.Header.Get("Cookie"))
172 assert.Equal(t, "test-csrf", r.Header.Get("CSRFPreventionToken"))
173
174 response := map[string]interface{}{"success": true}
175
176 w.Header().Set("Content-Type", "application/json")
177 _ = json.NewEncoder(w).Encode(response)
178 }))
179 defer server.Close()
180
181 client := NewHTTPClient(server.Client(), server.URL, testutils.NewTestLogger())
182
183 // Create mock auth manager with CSRF token
184 authManager := NewAuthManagerWithPassword(client, "user", "pass", testutils.NewTestLogger())
185 authManager.authToken = &AuthToken{
186 Ticket: "test-ticket",
187 CSRFToken: "test-csrf",
188 ExpiresAt: time.Now().Add(1 * time.Hour),
189 }
190 client.SetAuthManager(authManager)
191
192 postData := map[string]interface{}{"test": "data"}
193
194 var result map[string]interface{}
195 err := client.Post(context.Background(), "/test", postData, &result)
196
197 require.NoError(t, err)
198 assert.True(t, result["success"].(bool))
199}
200
201func TestHTTPClient_Put_Success(t *testing.T) {
202 // Create test server

Callers

nothing calls this directly

Calls 10

SetAuthManagerMethod · 0.95
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