MCPcopy
hub / github.com/cli/cli / TestHTTPHeaders

Function TestHTTPHeaders

api/client_test.go:227–258  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

225}
226
227func TestHTTPHeaders(t *testing.T) {
228 var gotReq *http.Request
229 ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
230 gotReq = r
231 w.WriteHeader(http.StatusNoContent)
232 }))
233 defer ts.Close()
234
235 ios, _, _, stderr := iostreams.Test()
236 httpClient, err := NewHTTPClient(HTTPClientOptions{
237 AppVersion: "v1.2.3",
238 Config: tinyConfig{ts.URL[7:] + ":oauth_token": "MYTOKEN"},
239 Log: ios.ErrOut,
240 })
241 assert.NoError(t, err)
242 client := NewClientFromHTTP(httpClient)
243
244 err = client.REST(ts.URL, "GET", ts.URL+"/user/repos", nil, nil)
245 assert.NoError(t, err)
246
247 wantHeader := map[string]string{
248 "Accept": "application/vnd.github.merge-info-preview+json, application/vnd.github.nebula-preview",
249 "Authorization": "token MYTOKEN",
250 "Content-Type": "application/json; charset=utf-8",
251 "User-Agent": "GitHub CLI v1.2.3",
252 "X-GitHub-Api-Version": "2022-11-28",
253 }
254 for name, value := range wantHeader {
255 assert.Equal(t, value, gotReq.Header.Get(name), name)
256 }
257 assert.Equal(t, "", stderr.String())
258}

Callers

nothing calls this directly

Calls 8

TestFunction · 0.92
NewHTTPClientFunction · 0.85
NewClientFromHTTPFunction · 0.85
EqualMethod · 0.80
CloseMethod · 0.65
RESTMethod · 0.65
GetMethod · 0.65
StringMethod · 0.45

Tested by

no test coverage detected