44 lines
1.1 KiB
Go
44 lines
1.1 KiB
Go
|
|
package client
|
||
|
|
|
||
|
|
import (
|
||
|
|
"context"
|
||
|
|
"os"
|
||
|
|
"testing"
|
||
|
|
)
|
||
|
|
|
||
|
|
func TestLiveListUsers(t *testing.T) {
|
||
|
|
endpoint := os.Getenv("VERSITYGW_ENDPOINT")
|
||
|
|
accessKey := os.Getenv("VERSITYGW_ADMIN_ACCESS_KEY")
|
||
|
|
secretKey := os.Getenv("VERSITYGW_ADMIN_SECRET_KEY")
|
||
|
|
if endpoint == "" || accessKey == "" || secretKey == "" {
|
||
|
|
t.Skip("VERSITYGW_ENDPOINT, VERSITYGW_ADMIN_ACCESS_KEY, and VERSITYGW_ADMIN_SECRET_KEY are required")
|
||
|
|
}
|
||
|
|
|
||
|
|
api, err := New(Config{
|
||
|
|
Endpoint: endpoint,
|
||
|
|
Region: envOrDefault("VERSITYGW_REGION", "us-east-1"),
|
||
|
|
AdminAccessKey: accessKey,
|
||
|
|
AdminSecretKey: secretKey,
|
||
|
|
InsecureTLS: os.Getenv("VERSITYGW_INSECURE_TLS") == "true",
|
||
|
|
})
|
||
|
|
if err != nil {
|
||
|
|
t.Fatalf("new client: %v", err)
|
||
|
|
}
|
||
|
|
|
||
|
|
accounts, err := api.ListUsers(context.Background())
|
||
|
|
if err != nil {
|
||
|
|
t.Fatalf("list users: %v", err)
|
||
|
|
}
|
||
|
|
|
||
|
|
for _, account := range accounts {
|
||
|
|
t.Logf("access=%s role=%s user_id=%d group_id=%d project_id=%d", account.Access, account.Role, account.UserID, account.GroupID, account.ProjectID)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
func envOrDefault(name, fallback string) string {
|
||
|
|
value := os.Getenv(name)
|
||
|
|
if value == "" {
|
||
|
|
return fallback
|
||
|
|
}
|
||
|
|
return value
|
||
|
|
}
|