forked from remote/oauth2
google: add Credentials.GetUniverseDomain with GCE MDS support
* Deprecate Credentials.UniverseDomain Change-Id: I1cbc842fbfce35540c8dff99fec09e036b9e2cdf Reviewed-on: https://go-review.googlesource.com/c/oauth2/+/554215 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Cody Oss <codyoss@google.com> Auto-Submit: Cody Oss <codyoss@google.com> Reviewed-by: Cody Oss <codyoss@google.com> Reviewed-by: Viacheslav Rostovtsev <virost@google.com>
This commit is contained in:
committed by
Gopher Robot
parent
1e6999b1be
commit
4ce7bbb2ff
@@ -5,6 +5,8 @@
|
||||
package google
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
"net/http/httptest"
|
||||
"strings"
|
||||
"testing"
|
||||
)
|
||||
@@ -137,3 +139,21 @@ func TestJWTConfigFromJSONNoAudience(t *testing.T) {
|
||||
t.Errorf("Audience = %q; want %q", got, want)
|
||||
}
|
||||
}
|
||||
|
||||
func TestComputeTokenSource(t *testing.T) {
|
||||
tokenPath := "/computeMetadata/v1/instance/service-accounts/default/token"
|
||||
tokenResponseBody := `{"access_token":"Sample.Access.Token","token_type":"Bearer","expires_in":3600}`
|
||||
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
if r.URL.Path != tokenPath {
|
||||
t.Errorf("got %s, want %s", r.URL.Path, tokenPath)
|
||||
}
|
||||
w.Write([]byte(tokenResponseBody))
|
||||
}))
|
||||
defer s.Close()
|
||||
t.Setenv("GCE_METADATA_HOST", strings.TrimPrefix(s.URL, "http://"))
|
||||
ts := ComputeTokenSource("")
|
||||
_, err := ts.Token()
|
||||
if err != nil {
|
||||
t.Errorf("ts.Token() = %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user