9 "github.com/bgentry/go-netrc/netrc"
12 func TestNetrcWithHostAndPort(t *testing.T) {
13 netrcFinder := &fakeNetrc{}
14 u, err := url.Parse("http://netrc-host:123/foo/bar")
21 Header: http.Header{},
24 if !setAuthFromNetrc(netrcFinder, req) {
25 t.Fatal("no netrc match")
28 auth := req.Header.Get("Authorization")
29 if auth != "Basic YWJjOmRlZg==" {
30 t.Fatalf("bad basic auth: %q", auth)
34 func TestNetrcWithHost(t *testing.T) {
35 netrcFinder := &fakeNetrc{}
36 u, err := url.Parse("http://netrc-host/foo/bar")
43 Header: http.Header{},
46 if !setAuthFromNetrc(netrcFinder, req) {
47 t.Fatalf("no netrc match")
50 auth := req.Header.Get("Authorization")
51 if auth != "Basic YWJjOmRlZg==" {
52 t.Fatalf("bad basic auth: %q", auth)
56 func TestNetrcWithBadHost(t *testing.T) {
57 netrcFinder := &fakeNetrc{}
58 u, err := url.Parse("http://other-host/foo/bar")
65 Header: http.Header{},
68 if setAuthFromNetrc(netrcFinder, req) {
69 t.Fatalf("unexpected netrc match")
72 auth := req.Header.Get("Authorization")
74 t.Fatalf("bad basic auth: %q", auth)
78 type fakeNetrc struct{}
80 func (n *fakeNetrc) FindMachine(host string) *netrc.Machine {
81 if strings.Contains(host, "netrc") {
82 return &netrc.Machine{Login: "abc", Password: "def"}