Browse Source

Add client.GetSigner to export Client.Signer

Use this way to allow users refresh token at program boot to fix cold boot issue
mozillazg 5 years ago
parent
commit
958e78d9c5
2 changed files with 12 additions and 0 deletions
  1. 4 0
      sdk/client.go
  2. 8 0
      sdk/client_test.go

+ 4 - 0
sdk/client.go

@@ -703,6 +703,10 @@ func (client *Client) GetConfig() *Config {
 	return client.config
 }
 
+func (client *Client) GetSigner() auth.Signer {
+	return client.signer
+}
+
 func NewClient() (client *Client, err error) {
 	client = &Client{}
 	err = client.Init()

+ 8 - 0
sdk/client_test.go

@@ -838,3 +838,11 @@ type myTransport struct{}
 func (m *myTransport) RoundTrip(req *http.Request) (*http.Response, error) {
 	return http.DefaultTransport.RoundTrip(req)
 }
+
+func TestClient_GetSigner(t *testing.T) {
+	client, err := NewClientWithBearerToken("cn-hangzhou", "Bearer.Token")
+	assert.Nil(t, err)
+	signer := client.GetSigner()
+	assert.Equal(t, client.signer, signer)
+	assert.True(t, client.signer == signer)
+}