Fix param expiry_seconds for kubernetes.GetCredentials request
This commit is contained in:
parent
62d1a5e41e
commit
12c5a5c9d7
|
@ -520,6 +520,7 @@ func (svc *KubernetesServiceOp) GetCredentials(ctx context.Context, clusterID st
|
||||||
if get.ExpirySeconds != nil {
|
if get.ExpirySeconds != nil {
|
||||||
q.Add("expiry_seconds", strconv.Itoa(*get.ExpirySeconds))
|
q.Add("expiry_seconds", strconv.Itoa(*get.ExpirySeconds))
|
||||||
}
|
}
|
||||||
|
req.URL.RawQuery = q.Encode()
|
||||||
credentials := new(KubernetesClusterCredentials)
|
credentials := new(KubernetesClusterCredentials)
|
||||||
resp, err := svc.client.Do(ctx, req, credentials)
|
resp, err := svc.client.Do(ctx, req, credentials)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -4,11 +4,12 @@ import (
|
||||||
"bytes"
|
"bytes"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/stretchr/testify/assert"
|
|
||||||
"net/http"
|
"net/http"
|
||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
"github.com/stretchr/testify/assert"
|
||||||
|
|
||||||
"github.com/stretchr/testify/require"
|
"github.com/stretchr/testify/require"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -429,6 +430,41 @@ func TestKubernetesClusters_GetCredentials(t *testing.T) {
|
||||||
}`
|
}`
|
||||||
mux.HandleFunc("/v2/kubernetes/clusters/deadbeef-dead-4aa5-beef-deadbeef347d/credentials", func(w http.ResponseWriter, r *http.Request) {
|
mux.HandleFunc("/v2/kubernetes/clusters/deadbeef-dead-4aa5-beef-deadbeef347d/credentials", func(w http.ResponseWriter, r *http.Request) {
|
||||||
testMethod(t, r, http.MethodGet)
|
testMethod(t, r, http.MethodGet)
|
||||||
|
if len(r.URL.Query()) > 0 {
|
||||||
|
t.Error("Request should not have Url params")
|
||||||
|
}
|
||||||
|
fmt.Fprint(w, jBlob)
|
||||||
|
})
|
||||||
|
got, _, err := kubeSvc.GetCredentials(ctx, "deadbeef-dead-4aa5-beef-deadbeef347d", &KubernetesClusterCredentialsGetRequest{})
|
||||||
|
require.NoError(t, err)
|
||||||
|
require.Equal(t, want, got)
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestKubernetesClusters_GetCredentials_WithExpirySeconds(t *testing.T) {
|
||||||
|
setup()
|
||||||
|
defer teardown()
|
||||||
|
|
||||||
|
kubeSvc := client.Kubernetes
|
||||||
|
timestamp, err := time.Parse(time.RFC3339, "2014-11-12T11:45:26.371Z")
|
||||||
|
require.NoError(t, err)
|
||||||
|
want := &KubernetesClusterCredentials{
|
||||||
|
Token: "secret",
|
||||||
|
ExpiresAt: timestamp,
|
||||||
|
}
|
||||||
|
jBlob := `
|
||||||
|
{
|
||||||
|
"token": "secret",
|
||||||
|
"expires_at": "2014-11-12T11:45:26.371Z"
|
||||||
|
}`
|
||||||
|
mux.HandleFunc("/v2/kubernetes/clusters/deadbeef-dead-4aa5-beef-deadbeef347d/credentials", func(w http.ResponseWriter, r *http.Request) {
|
||||||
|
testMethod(t, r, http.MethodGet)
|
||||||
|
expirySeconds, ok := r.URL.Query()["expiry_seconds"]
|
||||||
|
if !ok {
|
||||||
|
t.Error("Url param 'expiry_seconds' is missing")
|
||||||
|
}
|
||||||
|
if len(expirySeconds) != 1 || expirySeconds[0] != "3600" {
|
||||||
|
t.Error("incorrect expiry_seconds value, should be 3600")
|
||||||
|
}
|
||||||
fmt.Fprint(w, jBlob)
|
fmt.Fprint(w, jBlob)
|
||||||
})
|
})
|
||||||
got, _, err := kubeSvc.GetCredentials(ctx, "deadbeef-dead-4aa5-beef-deadbeef347d", &KubernetesClusterCredentialsGetRequest{
|
got, _, err := kubeSvc.GetCredentials(ctx, "deadbeef-dead-4aa5-beef-deadbeef347d", &KubernetesClusterCredentialsGetRequest{
|
||||||
|
|
Loading…
Reference in New Issue