MCPcopy Create free account
hub / github.com/cli/cli / TestNewHTTPClientTelemetryDisabler

Function TestNewHTTPClientTelemetryDisabler

api/http_client_test.go:405–451  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

403}
404
405func TestNewHTTPClientTelemetryDisabler(t *testing.T) {
406 ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
407 w.WriteHeader(http.StatusNoContent)
408 }))
409 defer ts.Close()
410
411 tests := []struct {
412 name string
413 host string
414 wantDisabled bool
415 }{
416 {
417 name: "enterprise host triggers disable",
418 host: "ghes.example.com",
419 wantDisabled: true,
420 },
421 {
422 name: "github.com does not trigger disable",
423 host: "github.com",
424 wantDisabled: false,
425 },
426 {
427 name: "tenancy host does not trigger disable",
428 host: "my-company.ghe.com",
429 wantDisabled: false,
430 },
431 }
432
433 for _, tt := range tests {
434 t.Run(tt.name, func(t *testing.T) {
435 disabler := &fakeTelemetryDisabler{}
436 client, err := NewHTTPClient(HTTPClientOptions{
437 TelemetryDisabler: disabler,
438 })
439 require.NoError(t, err)
440
441 req, err := http.NewRequest("GET", ts.URL, nil)
442 require.NoError(t, err)
443 req.Host = tt.host
444
445 res, err := client.Do(req)
446 require.NoError(t, err)
447 assert.Equal(t, 204, res.StatusCode)
448 assert.Equal(t, tt.wantDisabled, disabler.disabled, "Disable() called")
449 })
450 }
451}
452
453func TestNewHTTPClientWithoutTelemetryDisabler(t *testing.T) {
454 ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {

Callers

nothing calls this directly

Calls 5

DoMethod · 0.95
NewHTTPClientFunction · 0.85
EqualMethod · 0.80
CloseMethod · 0.65
RunMethod · 0.65

Tested by

no test coverage detected