From 2e68086dfca2caaf1579e667c082e110efa72ae4 Mon Sep 17 00:00:00 2001 From: Will Norris Date: Sun, 16 Jun 2013 13:44:35 -0700 Subject: [PATCH] more UnauthenticatedRateLimitedTransport tests add test to check for required fields, as well as test for default vs custom transport. --- github/github_test.go | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/github/github_test.go b/github/github_test.go index 930c178..4697d8e 100644 --- a/github/github_test.go +++ b/github/github_test.go @@ -317,3 +317,44 @@ func TestUnauthenticatedRateLimitedTransport(t *testing.T) { req, _ := unauthedClient.NewRequest("GET", "/", nil) unauthedClient.Do(req, nil) } + +func TestUnauthenticatedRateLimitedTransport_missingFields(t *testing.T) { + // missing ClientID + tp := &UnauthenticatedRateLimitedTransport{ + ClientSecret: "secret", + } + _, err := tp.RoundTrip(nil) + if err == nil { + t.Errorf("Expected error to be returned") + } + + // missing ClientSecret + tp = &UnauthenticatedRateLimitedTransport{ + ClientID: "id", + } + _, err = tp.RoundTrip(nil) + if err == nil { + t.Errorf("Expected error to be returned") + } +} + +func TestUnauthenticatedRateLimitedTransport_transport(t *testing.T) { + // default transport + tp := &UnauthenticatedRateLimitedTransport{ + ClientID: "id", + ClientSecret: "secret", + } + if tp.transport() != http.DefaultTransport { + t.Errorf("Expected http.DefaultTransport to be used.") + } + + // custom transport + tp = &UnauthenticatedRateLimitedTransport{ + ClientID: "id", + ClientSecret: "secret", + Transport: &http.Transport{}, + } + if tp.transport() == http.DefaultTransport { + t.Errorf("Expected custom transport to be used.") + } +}