From ae5a5132eb105e712799be4717929d55d75a04b2 Mon Sep 17 00:00:00 2001 From: zxc111 <zxc9007@gmail.com> Date: Tue, 11 May 2021 12:57:36 +0000 Subject: [PATCH] net/http: add test for proxyAuth Change-Id: Ib4edae749ce8da433e992e08a90c9cf3d4357081 GitHub-Last-Rev: 19d87d12ab6b299b37e8907429f4dff52ab53745 GitHub-Pull-Request: golang/go#46102 Reviewed-on: https://go-review.googlesource.com/c/go/+/318690 Reviewed-by: Damien Neil <dneil@google.com> Reviewed-by: Sean Liao <sean@liao.dev> Auto-Submit: Damien Neil <dneil@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> --- src/net/http/proxy_test.go | 42 +++++++++++++++++++++++++++++++++++--- 1 file changed, 39 insertions(+), 3 deletions(-) diff --git a/src/net/http/proxy_test.go b/src/net/http/proxy_test.go index 0dd57b41253..6090506f427 100644 --- a/src/net/http/proxy_test.go +++ b/src/net/http/proxy_test.go @@ -10,9 +10,6 @@ import ( "testing" ) -// TODO(mattn): -// test ProxyAuth - var cacheKeysTests = []struct { proxy string scheme string @@ -48,3 +45,42 @@ func ResetProxyEnv() { } ResetCachedEnvironment() } + +var proxyAuthTests = []struct { + proxy string + key string +}{ + { + "", + "", + }, + { + "http://bar.com", + "", + }, + { + "http://foo@bar.com", + "Basic Zm9vOg==", + }, + { + "http://foo:bar@bar.com", + "Basic Zm9vOmJhcg==", + }, +} + +func TestProxyAuthKeys(t *testing.T) { + for _, tt := range proxyAuthTests { + var proxy *url.URL + if tt.proxy != "" { + u, err := url.Parse(tt.proxy) + if err != nil { + t.Fatal(err) + } + proxy = u + } + cm := connectMethod{proxyURL: proxy} + if got := cm.proxyAuth(); got != tt.key { + t.Fatalf("{%q} proxyAuth key = %q; want %q", tt.proxy, got, tt.key) + } + } +} -- GitLab