Migrate tests from services/httpservice/client_test.go to testify (#12743)

Этот коммит содержится в:
Phillip Ahereza
2019-10-22 15:40:50 +03:00
коммит произвёл 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())
}
}) })
} }
} }