Migrate tests from services/httpservice/client_test.go to testify (#12743)
Этот коммит содержится в:
коммит произвёл
Ben Schumacher
родитель
c12c585fb8
Коммит
60572a00c8
@@ -6,6 +6,7 @@ package httpservice
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"github.com/stretchr/testify/assert"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"net"
|
"net"
|
||||||
"net/http"
|
"net/http"
|
||||||
@@ -35,9 +36,7 @@ func TestHTTPClient(t *testing.T) {
|
|||||||
} {
|
} {
|
||||||
_, err := c.Get(tc.URL)
|
_, err := c.Get(tc.URL)
|
||||||
if !tc.IsInternal {
|
if !tc.IsInternal {
|
||||||
if err != nil {
|
require.Nil(t, err, "google is down?")
|
||||||
t.Fatal("google is down?")
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
allowed := !tc.IsInternal || allowInternal
|
allowed := !tc.IsInternal || allowInternal
|
||||||
success := err == nil
|
success := err == nil
|
||||||
@@ -47,9 +46,7 @@ func TestHTTPClient(t *testing.T) {
|
|||||||
case *url.Error:
|
case *url.Error:
|
||||||
success = e.Err != AddressForbidden
|
success = e.Err != AddressForbidden
|
||||||
}
|
}
|
||||||
if success != allowed {
|
require.Equalf(t, success, allowed, "failed for %v. allowed: %v, success %v", tc.URL, allowed, success)
|
||||||
t.Fatalf("failed for %v. allowed: %v, success %v", tc.URL, allowed, success)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -64,18 +61,12 @@ func TestHTTPClientWithProxy(t *testing.T) {
|
|||||||
c.Transport.(*MattermostTransport).Transport.(*http.Transport).Proxy = http.ProxyURL(purl)
|
c.Transport.(*MattermostTransport).Transport.(*http.Transport).Proxy = http.ProxyURL(purl)
|
||||||
|
|
||||||
resp, err := c.Get("http://acme.com")
|
resp, err := c.Get("http://acme.com")
|
||||||
if err != nil {
|
require.Nil(t, err)
|
||||||
t.Fatal(err)
|
|
||||||
}
|
|
||||||
defer resp.Body.Close()
|
defer resp.Body.Close()
|
||||||
|
|
||||||
body, err := ioutil.ReadAll(resp.Body)
|
body, err := ioutil.ReadAll(resp.Body)
|
||||||
if err != nil {
|
require.Nil(t, err)
|
||||||
t.Fatal(err)
|
require.Equal(t, "proxy", string(body))
|
||||||
}
|
|
||||||
if string(body) != "proxy" {
|
|
||||||
t.FailNow()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func createProxyServer() *httptest.Server {
|
func createProxyServer() *httptest.Server {
|
||||||
@@ -113,11 +104,14 @@ func TestDialContextFilter(t *testing.T) {
|
|||||||
return nil, nil
|
return nil, nil
|
||||||
}, func(host string) bool { return host == "10.0.0.1" }, func(ip net.IP) bool { return !IsReservedIP(ip) })
|
}, func(host string) bool { return host == "10.0.0.1" }, func(ip net.IP) bool { return !IsReservedIP(ip) })
|
||||||
_, err := filter(context.Background(), "", tc.Addr)
|
_, err := filter(context.Background(), "", tc.Addr)
|
||||||
switch {
|
|
||||||
case tc.IsValid == (err == AddressForbidden) || (err != nil && err != AddressForbidden):
|
if tc.IsValid {
|
||||||
t.Errorf("unexpected err for %v (%v)", tc.Addr, err)
|
require.Nil(t, err)
|
||||||
case tc.IsValid != didDial:
|
require.True(t, didDial)
|
||||||
t.Errorf("unexpected didDial for %v", tc.Addr)
|
} else {
|
||||||
|
require.NotNil(t, err)
|
||||||
|
require.Equal(t, err, AddressForbidden)
|
||||||
|
require.False(t, didDial)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -127,19 +121,15 @@ func TestUserAgentIsSet(t *testing.T) {
|
|||||||
defaultUserAgent = testUserAgent
|
defaultUserAgent = testUserAgent
|
||||||
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
|
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
|
||||||
ua := req.UserAgent()
|
ua := req.UserAgent()
|
||||||
if ua == "" {
|
assert.NotEqual(t, "", ua, "expected user-agent to be non-empty")
|
||||||
t.Error("expected user-agent to be non-empty")
|
assert.Equalf(t, testUserAgent, ua, "expected user-agent to be %q but was %q", testUserAgent, ua)
|
||||||
}
|
|
||||||
if ua != testUserAgent {
|
|
||||||
t.Errorf("expected user-agent to be %q but was %q", testUserAgent, ua)
|
|
||||||
}
|
|
||||||
}))
|
}))
|
||||||
defer ts.Close()
|
defer ts.Close()
|
||||||
client := NewHTTPClient(NewTransport(true, nil, nil))
|
client := NewHTTPClient(NewTransport(true, nil, nil))
|
||||||
req, err := http.NewRequest("GET", ts.URL, nil)
|
req, err := http.NewRequest("GET", ts.URL, nil)
|
||||||
if err != nil {
|
|
||||||
t.Fatal("NewRequest failed", err)
|
require.Nil(t, err, "NewRequest failed", err)
|
||||||
}
|
|
||||||
client.Do(req)
|
client.Do(req)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -164,9 +154,8 @@ func TestIsReservedIP(t *testing.T) {
|
|||||||
}
|
}
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
if got := IsReservedIP(tt.ip); got != tt.want {
|
got := IsReservedIP(tt.ip)
|
||||||
t.Errorf("IsReservedIP() = %v, want %v", got, tt.want)
|
assert.Equalf(t, tt.want, got, "IsReservedIP() = %v, want %v", got, tt.want)
|
||||||
}
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -182,10 +171,8 @@ func TestIsOwnIP(t *testing.T) {
|
|||||||
}
|
}
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
if got, _ := IsOwnIP(tt.ip); got != tt.want {
|
got, _ := IsOwnIP(tt.ip)
|
||||||
t.Errorf("IsOwnIP() = %v, want %v", got, tt.want)
|
assert.Equalf(t, tt.want, got, "IsOwnIP() = %v, want %v for IP %s", got, tt.want, tt.ip.String())
|
||||||
t.Errorf(tt.ip.String())
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user