cr_test.go 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. package integration
  2. import (
  3. "github.com/aliyun/alibaba-cloud-sdk-go/services/cr"
  4. "github.com/stretchr/testify/assert"
  5. "fmt"
  6. "math/rand"
  7. "os"
  8. "testing"
  9. "time"
  10. )
  11. var genKey func() string
  12. func init() {
  13. rand.Seed(time.Now().UnixNano())
  14. genKey = genKeyFunc()
  15. }
  16. func genKeyFunc() func() string {
  17. var key int
  18. return func() string {
  19. if key == 0 {
  20. key = rand.Intn(1e8)
  21. }
  22. return fmt.Sprintf("%08d", key)
  23. }
  24. }
  25. func Test_CR_CreateNamespace(t *testing.T) {
  26. client, err := cr.NewClientWithAccessKey("cn-hangzhou", os.Getenv("ACCESS_KEY_ID"), os.Getenv("ACCESS_KEY_SECRET"))
  27. assert.Nil(t, err)
  28. request := cr.CreateCreateNamespaceRequest()
  29. request.SetDomain("cr.cn-hangzhou.aliyuncs.com")
  30. request.SetContentType("JSON")
  31. content := fmt.Sprintf(
  32. `{
  33. "Namespace":{
  34. "Namespace":"%s"
  35. }
  36. }`, genKey(),
  37. )
  38. request.SetContent([]byte(content))
  39. response, err := client.CreateNamespace(request)
  40. assert.Nil(t, err)
  41. assert.True(t, response.IsSuccess())
  42. t.Log(content)
  43. }
  44. func Test_CR_UpdateNamespace(t *testing.T) {
  45. client, err := cr.NewClientWithAccessKey("cn-hangzhou", os.Getenv("ACCESS_KEY_ID"), os.Getenv("ACCESS_KEY_SECRET"))
  46. assert.Nil(t, err)
  47. request := cr.CreateUpdateNamespaceRequest()
  48. request.SetDomain("cr.cn-hangzhou.aliyuncs.com")
  49. request.Namespace = genKey()
  50. request.SetContentType("JSON")
  51. content := fmt.Sprintf(
  52. `{
  53. "Namespace":{
  54. "AutoCreate":%v,
  55. "DefaultVisibility":"%s"
  56. }
  57. }`, false, "PUBLIC",
  58. )
  59. request.SetContent([]byte(content))
  60. response, err := client.UpdateNamespace(request)
  61. assert.Nil(t, err)
  62. assert.True(t, response.IsSuccess())
  63. }
  64. func Test_CR_GetNamespace(t *testing.T) {
  65. client, err := cr.NewClientWithAccessKey("cn-hangzhou", os.Getenv("ACCESS_KEY_ID"), os.Getenv("ACCESS_KEY_SECRET"))
  66. assert.Nil(t, err)
  67. request := cr.CreateGetNamespaceRequest()
  68. request.SetDomain("cr.cn-hangzhou.aliyuncs.com")
  69. request.Namespace = genKey()
  70. response, err := client.GetNamespace(request)
  71. assert.Nil(t, err)
  72. assert.True(t, response.IsSuccess())
  73. }
  74. func Test_CR_GetNamespaceList(t *testing.T) {
  75. client, err := cr.NewClientWithAccessKey("cn-hangzhou", os.Getenv("ACCESS_KEY_ID"), os.Getenv("ACCESS_KEY_SECRET"))
  76. assert.Nil(t, err)
  77. request := cr.CreateGetNamespaceListRequest()
  78. request.SetDomain("cr.cn-hangzhou.aliyuncs.com")
  79. response, err := client.GetNamespaceList(request)
  80. assert.Nil(t, err)
  81. assert.True(t, response.IsSuccess())
  82. }
  83. func Test_CR_DeleteNamespace(t *testing.T) {
  84. client, err := cr.NewClientWithAccessKey("cn-hangzhou", os.Getenv("ACCESS_KEY_ID"), os.Getenv("ACCESS_KEY_SECRET"))
  85. assert.Nil(t, err)
  86. request := cr.CreateDeleteNamespaceRequest()
  87. request.SetDomain("cr.cn-hangzhou.aliyuncs.com")
  88. request.Namespace = genKey()
  89. response, err := client.DeleteNamespace(request)
  90. assert.Nil(t, err)
  91. assert.True(t, response.IsSuccess())
  92. }