本文整理汇总了Golang中github.com/Azure/azure-sdk-for-go/Godeps/_workspace/src/github.com/Azure/go-autorest/autorest.SenderFunc函数的典型用法代码示例。如果您正苦于以下问题:Golang SenderFunc函数的具体用法?Golang SenderFunc怎么用?Golang SenderFunc使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了SenderFunc函数的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: TestServicePrincipalTokenRefreshUnmarshals
func TestServicePrincipalTokenRefreshUnmarshals(t *testing.T) {
spt := newServicePrincipalToken()
expiresOn := strconv.Itoa(int(time.Now().Add(3600 * time.Second).Sub(expirationBase).Seconds()))
j := newTokenJSON(expiresOn, "resource")
resp := mocks.NewResponseWithContent(j)
c := mocks.NewSender()
s := autorest.DecorateSender(c,
(func() autorest.SendDecorator {
return func(s autorest.Sender) autorest.Sender {
return autorest.SenderFunc(func(r *http.Request) (*http.Response, error) {
return resp, nil
})
}
})())
spt.SetSender(s)
err := spt.Refresh()
if err != nil {
t.Errorf("azure: ServicePrincipalToken#Refresh returned an unexpected error (%v)", err)
} else if spt.AccessToken != "accessToken" ||
spt.ExpiresIn != "3600" ||
spt.ExpiresOn != expiresOn ||
spt.NotBefore != expiresOn ||
spt.Resource != "resource" ||
spt.Type != "Bearer" {
t.Errorf("azure: ServicePrincipalToken#Refresh failed correctly unmarshal the JSON -- expected %v, received %v",
j, *spt)
}
}
开发者ID:kbxkb,项目名称:azure-sdk-for-go,代码行数:30,代码来源:token_test.go
示例2: withRequestLogging
func withRequestLogging() autorest.SendDecorator {
return func(s autorest.Sender) autorest.Sender {
return autorest.SenderFunc(func(r *http.Request) (*http.Response, error) {
log.Printf("[DEBUG] Sending Azure RM Request %s to %s\n", r.Method, r.URL)
resp, err := s.Do(r)
log.Printf("[DEBUG] Received Azure RM Request status code %s for %s\n", resp.Status, r.URL)
return resp, err
})
}
}
开发者ID:alexlafreniere,项目名称:terraform,代码行数:10,代码来源:config.go
示例3: withPollWatcher
func withPollWatcher() autorest.SendDecorator {
return func(s autorest.Sender) autorest.Sender {
return autorest.SenderFunc(func(r *http.Request) (*http.Response, error) {
fmt.Printf("[DEBUG] Sending Azure RM Request %q to %q\n", r.Method, r.URL)
resp, err := s.Do(r)
fmt.Printf("[DEBUG] Received Azure RM Request status code %s for %s\n", resp.Status, r.URL)
if autorest.ResponseRequiresPolling(resp) {
fmt.Printf("[DEBUG] Azure RM request will poll %s after %d seconds\n",
autorest.GetPollingLocation(resp),
int(autorest.GetPollingDelay(resp, time.Duration(0))/time.Second))
}
return resp, err
})
}
}
开发者ID:devendraPSL,项目名称:terraform-api,代码行数:15,代码来源:config.go
示例4: withWatcher
func withWatcher() autorest.SendDecorator {
return func(s autorest.Sender) autorest.Sender {
return autorest.SenderFunc(func(r *http.Request) (*http.Response, error) {
fmt.Printf("Sending %s %s\n", r.Method, r.URL)
resp, err := s.Do(r)
fmt.Printf("...received status %s\n", resp.Status)
if autorest.ResponseRequiresPolling(resp) {
fmt.Printf("...will poll after %d seconds\n",
int(autorest.GetPollingDelay(resp, time.Duration(0))/time.Second))
fmt.Printf("...will poll at %s\n", autorest.GetPollingLocation(resp))
}
fmt.Println("")
return resp, err
})
}
}
开发者ID:freimer,项目名称:azure-sdk-for-go,代码行数:16,代码来源:create.go
示例5: TestServicePrincipalTokenRefreshUsesPOST
func TestServicePrincipalTokenRefreshUsesPOST(t *testing.T) {
spt := newServicePrincipalToken()
c := mocks.NewSender()
s := autorest.DecorateSender(c,
(func() autorest.SendDecorator {
return func(s autorest.Sender) autorest.Sender {
return autorest.SenderFunc(func(r *http.Request) (*http.Response, error) {
if r.Method != "POST" {
t.Errorf("azure: ServicePrincipalToken#Refresh did not correctly set HTTP method -- expected %v, received %v", "POST", r.Method)
}
return mocks.NewResponse(), nil
})
}
})())
spt.SetSender(s)
spt.Refresh()
}
开发者ID:kbxkb,项目名称:azure-sdk-for-go,代码行数:18,代码来源:token_test.go
示例6: TestServicePrincipalTokenRefreshClosesRequestBody
func TestServicePrincipalTokenRefreshClosesRequestBody(t *testing.T) {
spt := newServicePrincipalToken()
resp := mocks.NewResponse()
c := mocks.NewSender()
s := autorest.DecorateSender(c,
(func() autorest.SendDecorator {
return func(s autorest.Sender) autorest.Sender {
return autorest.SenderFunc(func(r *http.Request) (*http.Response, error) {
return resp, nil
})
}
})())
spt.SetSender(s)
spt.Refresh()
if resp.Body.(*mocks.Body).IsOpen() {
t.Error("azure: ServicePrincipalToken#Refresh failed to close the HTTP Response Body")
}
}
开发者ID:kbxkb,项目名称:azure-sdk-for-go,代码行数:20,代码来源:token_test.go
示例7: TestServicePrincipalTokenRefreshSetsURL
func TestServicePrincipalTokenRefreshSetsURL(t *testing.T) {
spt := newServicePrincipalToken()
c := mocks.NewSender()
s := autorest.DecorateSender(c,
(func() autorest.SendDecorator {
return func(s autorest.Sender) autorest.Sender {
return autorest.SenderFunc(func(r *http.Request) (*http.Response, error) {
u := fmt.Sprintf("https://login.microsoftonline.com/%s/oauth2/token?api-version=1.0", spt.tenantID)
if r.URL.String() != u {
t.Errorf("azure: ServicePrincipalToken#Refresh did not correctly set the URL -- expected %v, received %v",
u, r.URL)
}
return mocks.NewResponse(), nil
})
}
})())
spt.SetSender(s)
spt.Refresh()
}
开发者ID:kbxkb,项目名称:azure-sdk-for-go,代码行数:20,代码来源:token_test.go
示例8: TestServicePrincipalTokenRefreshSetsMimeType
func TestServicePrincipalTokenRefreshSetsMimeType(t *testing.T) {
spt := newServicePrincipalToken()
c := mocks.NewSender()
s := autorest.DecorateSender(c,
(func() autorest.SendDecorator {
return func(s autorest.Sender) autorest.Sender {
return autorest.SenderFunc(func(r *http.Request) (*http.Response, error) {
if r.Header.Get(http.CanonicalHeaderKey("Content-Type")) != "application/x-www-form-urlencoded" {
t.Errorf("azure: ServicePrincipalToken#Refresh did not correctly set Content-Type -- expected %v, received %v",
"application/x-form-urlencoded",
r.Header.Get(http.CanonicalHeaderKey("Content-Type")))
}
return mocks.NewResponse(), nil
})
}
})())
spt.SetSender(s)
spt.Refresh()
}
开发者ID:kbxkb,项目名称:azure-sdk-for-go,代码行数:20,代码来源:token_test.go
示例9: TestServicePrincipalTokenEnsureFreshSkipsIfFresh
func TestServicePrincipalTokenEnsureFreshSkipsIfFresh(t *testing.T) {
spt := newServicePrincipalToken()
setTokenToExpireIn(&spt.Token, 1000*time.Second)
f := false
c := mocks.NewSender()
s := autorest.DecorateSender(c,
(func() autorest.SendDecorator {
return func(s autorest.Sender) autorest.Sender {
return autorest.SenderFunc(func(r *http.Request) (*http.Response, error) {
f = true
return mocks.NewResponse(), nil
})
}
})())
spt.SetSender(s)
spt.EnsureFresh()
if f {
t.Error("azure: ServicePrincipalToken#EnsureFresh invoked Refresh for fresh token")
}
}
开发者ID:kbxkb,项目名称:azure-sdk-for-go,代码行数:21,代码来源:token_test.go
示例10: TestServicePrincipalTokenEnsureFreshRefreshes
func TestServicePrincipalTokenEnsureFreshRefreshes(t *testing.T) {
spt := newServicePrincipalToken()
expireToken(&spt.Token)
f := false
c := mocks.NewSender()
s := autorest.DecorateSender(c,
(func() autorest.SendDecorator {
return func(s autorest.Sender) autorest.Sender {
return autorest.SenderFunc(func(r *http.Request) (*http.Response, error) {
f = true
return mocks.NewResponse(), nil
})
}
})())
spt.SetSender(s)
spt.EnsureFresh()
if !f {
t.Error("azure: ServicePrincipalToken#EnsureFresh failed to call Refresh for stale token")
}
}
开发者ID:kbxkb,项目名称:azure-sdk-for-go,代码行数:21,代码来源:token_test.go
示例11: TestServicePrincipalTokenRefreshSetsBody
func TestServicePrincipalTokenRefreshSetsBody(t *testing.T) {
spt := newServicePrincipalToken()
c := mocks.NewSender()
s := autorest.DecorateSender(c,
(func() autorest.SendDecorator {
return func(s autorest.Sender) autorest.Sender {
return autorest.SenderFunc(func(r *http.Request) (*http.Response, error) {
b, err := ioutil.ReadAll(r.Body)
if err != nil {
t.Errorf("azure: Failed to read body of Service Principal token request (%v)", err)
} else if string(b) != defaultFormData {
t.Errorf("azure: ServicePrincipalToken#Refresh did not correctly set the HTTP Request Body -- expected %v, received %v",
defaultFormData, string(b))
}
return mocks.NewResponse(), nil
})
}
})())
spt.SetSender(s)
spt.Refresh()
}
开发者ID:kbxkb,项目名称:azure-sdk-for-go,代码行数:22,代码来源:token_test.go
注:本文中的github.com/Azure/azure-sdk-for-go/Godeps/_workspace/src/github.com/Azure/go-autorest/autorest.SenderFunc函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论