/vendor/github.com/denverdino/aliyungo/ros/stack_test.go

https://github.com/alibaba/terraform-provider · Go · 161 lines · 143 code · 17 blank · 1 comment · 18 complexity · 793866fed85560d7f5170f07e17dc735 MD5 · raw file

  1. package ros
  2. import (
  3. "testing"
  4. "fmt"
  5. "os"
  6. "time"
  7. )
  8. var (
  9. myTestTemplate = `
  10. {
  11. "ROSTemplateFormatVersion": "2015-09-01",
  12. "Resources": {
  13. "string3": {
  14. "Type": "ALIYUN::RandomString",
  15. "DependsOn": [
  16. "string2"
  17. ],
  18. "Properties": {
  19. "sequence": "octdigits",
  20. "length": 100
  21. }
  22. },
  23. "string1": {
  24. "Test1": "Hello",
  25. "Type": "ALIYUN::RandomString"
  26. },
  27. "string2": {
  28. "Type": "ALIYUN::RandomString",
  29. "DependsOn": [
  30. "string1"
  31. ],
  32. "Properties": {
  33. "sequence": "octdigits",
  34. "length": 100
  35. }
  36. }
  37. }
  38. }
  39. `
  40. myTestTemplateUpdate = `
  41. {
  42. "ROSTemplateFormatVersion": "2015-09-01",
  43. "Resources": {
  44. "string3": {
  45. "Type": "ALIYUN::RandomString",
  46. "DependsOn": [
  47. "string2"
  48. ],
  49. "Properties": {
  50. "sequence": "octdigits",
  51. "length": 125
  52. }
  53. },
  54. "string1": {
  55. "Test1": "Hello222",
  56. "Type": "ALIYUN::RandomString"
  57. },
  58. "string2": {
  59. "Type": "ALIYUN::RandomString",
  60. "DependsOn": [
  61. "string1"
  62. ],
  63. "Properties": {
  64. "sequence": "octdigits",
  65. "length": 100
  66. }
  67. }
  68. }
  69. }
  70. `
  71. )
  72. func TestClient_CreateStack(t *testing.T) {
  73. args := &CreateStackRequest{
  74. Name: fmt.Sprintf("my-k8s-test-stack-%d", time.Now().Unix()),
  75. Template: myTestTemplate,
  76. Parameters: map[string]interface{}{},
  77. DisableRollback: false,
  78. TimeoutMins: 30,
  79. }
  80. response, err := debugClientForTestCase.CreateStack(TestRegionID, args)
  81. if err != nil {
  82. t.Fatalf("Failed to CreateStack %++v", err)
  83. } else {
  84. t.Logf("Success %++v", response)
  85. }
  86. }
  87. func TestClient_DeleteStack(t *testing.T) {
  88. stackName := os.Getenv("StackName")
  89. stackId := os.Getenv("StackId")
  90. response, err := debugClientForTestCase.DeleteStack(TestRegionID, stackId, stackName)
  91. if err != nil {
  92. t.Fatalf("Failed to DeleteStack %++v", err)
  93. } else {
  94. t.Logf("Success %++v", response)
  95. }
  96. }
  97. func TestClient_AbandonStack(t *testing.T) {
  98. stackName := os.Getenv("StackName")
  99. stackId := os.Getenv("StackId")
  100. response, err := debugClientForTestCase.AbandonStack(TestRegionID, stackId, stackName)
  101. if err != nil {
  102. t.Fatalf("Failed to AbandonStack %++v", err)
  103. } else {
  104. t.Logf("Success %++v", response)
  105. }
  106. }
  107. func TestClient_DescribeStacks(t *testing.T) {
  108. args := &DescribeStacksRequest{
  109. RegionId: TestRegionID,
  110. }
  111. stacks, err := debugClientForTestCase.DescribeStacks(args)
  112. if err != nil {
  113. t.Fatalf("Failed to DescribeStacks %++v", err)
  114. } else {
  115. t.Logf("Response is %++v", stacks)
  116. }
  117. }
  118. func TestClient_DescribeStack(t *testing.T) {
  119. stackName := os.Getenv("StackName")
  120. stackId := os.Getenv("StackId")
  121. response, err := debugClientForTestCase.DescribeStack(TestRegionID, stackId, stackName)
  122. if err != nil {
  123. t.Fatalf("Failed to DescribeStack %++v", err)
  124. } else {
  125. t.Logf("Success %++v", response)
  126. }
  127. }
  128. func TestClient_UpdateStack(t *testing.T) {
  129. stackName := os.Getenv("StackName")
  130. stackId := os.Getenv("StackId")
  131. //ps, _ := json.Marshal(p)
  132. args := &UpdateStackRequest{
  133. Template: myTestTemplateUpdate,
  134. Parameters: map[string]interface{}{},
  135. DisableRollback: false,
  136. TimeoutMins: 45,
  137. }
  138. response, err := debugClientForTestCase.UpdateStack(TestRegionID, stackId, stackName, args)
  139. if err != nil {
  140. t.Fatalf("Failed to UpdateStack %++v", err)
  141. } else {
  142. t.Logf("Success %++v", response)
  143. }
  144. }