返回 DeepSeek-Reasonix
lifecycle_test.go
根目录 / internal / provider / responses / lifecycle_test.go
1 package responses
2
3 import (
4 "net/http"
5 "testing"
6 )
7
8 type closeTrackingTransport struct {
9 closed bool
10 }
11
12 func (*closeTrackingTransport) RoundTrip(*http.Request) (*http.Response, error) {
13 panic("unexpected RoundTrip")
14 }
15
16 func (t *closeTrackingTransport) CloseIdleConnections() {
17 t.closed = true
18 }
19
20 func TestCloseIdleConnectionsDelegatesToHTTPClient(t *testing.T) {
21 transport := &closeTrackingTransport{}
22 c := &client{http: &http.Client{Transport: transport}}
23
24 c.CloseIdleConnections()
25 if !transport.closed {
26 t.Fatal("HTTP transport did not receive CloseIdleConnections")
27 }
28 }
29
30 func TestCloseIdleConnectionsIsNilSafe(t *testing.T) {
31 var nilClient *client
32 nilClient.CloseIdleConnections()
33 (&client{}).CloseIdleConnections()
34 }
35
35 lines GO