credential_test.go 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package integration
  2. import (
  3. "github.com/aliyun/alibaba-cloud-sdk-go/services/cs"
  4. "github.com/aliyun/alibaba-cloud-sdk-go/services/ecs"
  5. "github.com/stretchr/testify/assert"
  6. "os"
  7. "testing"
  8. )
  9. func Test_DescribeRegionsWithRPCrequestWithAK(t *testing.T) {
  10. client, err := ecs.NewClientWithAccessKey(os.Getenv("REGION_ID"), os.Getenv("ACCESS_KEY_ID"), os.Getenv("ACCESS_KEY_SECRET"))
  11. assert.Nil(t, err)
  12. assert.NotNil(t, client)
  13. request := ecs.CreateDescribeRegionsRequest()
  14. request.Scheme = "https"
  15. response, err := client.DescribeRegions(request)
  16. assert.Nil(t, err)
  17. assert.NotNil(t, response)
  18. assert.Equal(t, 36, len(response.RequestId))
  19. assert.True(t, len(response.Regions.Region) > 0)
  20. }
  21. func Test_DescribeRegionsWithRPCrequestWithSTStoken(t *testing.T) {
  22. assumeresponse, err := createAssumeRole()
  23. assert.Nil(t, err)
  24. credential := assumeresponse.Credentials
  25. client, err := ecs.NewClientWithStsToken(os.Getenv("REGION_ID"), credential.AccessKeyId, credential.AccessKeySecret, credential.SecurityToken)
  26. assert.Nil(t, err)
  27. assert.NotNil(t, client)
  28. request := ecs.CreateDescribeRegionsRequest()
  29. request.Scheme = "https"
  30. response, err := client.DescribeRegions(request)
  31. assert.Nil(t, err)
  32. assert.NotNil(t, response)
  33. assert.Equal(t, 36, len(response.RequestId))
  34. assert.True(t, len(response.Regions.Region) > 0)
  35. }
  36. func Test_DescribeClusterDetailWithROArequestWithAK(t *testing.T) {
  37. client, err := cs.NewClientWithAccessKey(os.Getenv("REGION_ID"), os.Getenv("ACCESS_KEY_ID"), os.Getenv("ACCESS_KEY_SECRET"))
  38. assert.Nil(t, err)
  39. request := cs.CreateDescribeClusterDetailRequest()
  40. request.SetDomain("cs.aliyuncs.com")
  41. request.QueryParams["RegionId"] = os.Getenv("REGION_ID")
  42. request.Method = "GET"
  43. response, err := client.DescribeClusterDetail(request)
  44. assert.NotNil(t, err)
  45. assert.Equal(t, 400, response.GetHttpStatus())
  46. assert.Contains(t, err.Error(), "Request url is invalid")
  47. }
  48. func Test_DescribeRegionsWithRPCrequestWithArn(t *testing.T) {
  49. subaccesskeyid, subaccesskeysecret, err := createAccessKey()
  50. assert.Nil(t, err)
  51. client, err := ecs.NewClientWithRamRoleArn(os.Getenv("REGION_ID"), subaccesskeyid, subaccesskeysecret, rolearn, "alice_test")
  52. assert.Nil(t, err)
  53. request := ecs.CreateDescribeRegionsRequest()
  54. request.Scheme = "https"
  55. request.Domain = "ecs.aliyuncs.com"
  56. response, err := client.DescribeRegions(request)
  57. assert.Nil(t, err)
  58. assert.Equal(t, 36, len(response.RequestId))
  59. }