sub2api/backend/internal/pkg/lspool/proxy_exec_test.go
win b856586412
Some checks failed
CI / test (push) Failing after 16m30s
CI / golangci-lint (push) Failing after 4s
Security Scan / backend-security (push) Failing after 1m35s
Security Scan / frontend-security (push) Failing after 1m31s
修复h1
2026-04-01 01:35:49 +08:00

32 lines
916 B
Go

package lspool
import (
"net/url"
"strings"
"testing"
"github.com/stretchr/testify/require"
)
func TestBuildProxychainsConfigIncludesAuthAndLocalBypass(t *testing.T) {
proxyURL, err := url.Parse("socks5h://testuser:testpass@192.0.2.1:1080")
require.NoError(t, err)
cfg, err := buildProxychainsConfig(proxyURL)
require.NoError(t, err)
require.Contains(t, cfg, "proxy_dns\n")
require.Contains(t, cfg, "localnet 127.0.0.0/255.0.0.0\n")
require.Contains(t, cfg, "localnet ::1/128\n")
require.Contains(t, cfg, "[ProxyList]\n")
require.Contains(t, cfg, "socks5 192.0.2.1 1080 testuser testpass\n")
}
func TestBuildProxychainsConfigRejectsWhitespaceCredentials(t *testing.T) {
proxyURL, err := url.Parse("socks5h://user:bad%20pass@127.0.0.1:1080")
require.NoError(t, err)
_, err = buildProxychainsConfig(proxyURL)
require.Error(t, err)
require.True(t, strings.Contains(err.Error(), "whitespace"))
}