Shinwayy / internal /runtime /executor /proxy_helpers_test.go
Shinway Deploy
track binary files with git-lfs
db492de
Raw
History Blame Contribute Delete
1.41 kB
package executor
import (
"testing"
"time"
"github.com/router-for-me/CLIProxyAPI/v6/internal/config"
)
func TestApplyTransportDefaults_FromConfig(t *testing.T) {
cfg := &config.Config{}
cfg.HTTPTransport.MaxIdleConns = 321
cfg.HTTPTransport.MaxIdleConnsPerHost = 33
cfg.HTTPTransport.MaxConnsPerHost = 44
cfg.HTTPTransport.IdleConnTimeoutSeconds = 17
tr := buildProxyTransport("http://127.0.0.1:8080")
if tr == nil {
t.Fatal("expected proxy transport")
}
applyTransportDefaults(tr, cfg)
if tr.MaxIdleConns != 321 {
t.Fatalf("MaxIdleConns=%d", tr.MaxIdleConns)
}
if tr.MaxIdleConnsPerHost != 33 {
t.Fatalf("MaxIdleConnsPerHost=%d", tr.MaxIdleConnsPerHost)
}
if tr.MaxConnsPerHost != 44 {
t.Fatalf("MaxConnsPerHost=%d", tr.MaxConnsPerHost)
}
if tr.IdleConnTimeout != 17*time.Second {
t.Fatalf("IdleConnTimeout=%s", tr.IdleConnTimeout)
}
}
func TestApplyTransportDefaults_Defaults(t *testing.T) {
tr := buildProxyTransport("http://127.0.0.1:8080")
if tr == nil {
t.Fatal("expected proxy transport")
}
applyTransportDefaults(tr, nil)
if tr.MaxIdleConns != 100 || tr.MaxIdleConnsPerHost != 10 {
t.Fatalf("unexpected defaults: %d/%d", tr.MaxIdleConns, tr.MaxIdleConnsPerHost)
}
if tr.IdleConnTimeout != 90*time.Second {
t.Fatalf("unexpected idle timeout: %s", tr.IdleConnTimeout)
}
if !tr.ForceAttemptHTTP2 {
t.Fatal("ForceAttemptHTTP2 should be enabled")
}
}