@@ -3,6 +3,8 @@ package tencentcloud
3
3
import (
4
4
"context"
5
5
"fmt"
6
+ sqlserver "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/sqlserver/v20180328"
7
+ "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/internal/helper"
6
8
"log"
7
9
"strings"
8
10
"testing"
@@ -22,14 +24,21 @@ func init() {
22
24
cli , _ := sharedClientForRegion (r )
23
25
client := cli .(* TencentCloudClient ).apiV3Conn
24
26
service := SqlserverService {client }
27
+ instance , err := service .DescribeSqlserverInstances (ctx , "" , defaultPubSQLServerName , - 1 , "" , "" , 1 )
28
+ if err != nil {
29
+ return err
30
+ }
25
31
subInstances , err := service .DescribeSqlserverInstances (ctx , "" , defaultSubSQLServerName , - 1 , "" , "" , 1 )
26
32
27
33
if err != nil {
28
34
return err
29
35
}
30
36
37
+ pubInstanceId := * instance [0 ].InstanceId
31
38
subInstanceId := * subInstances [0 ].InstanceId
32
39
40
+ testAccUnsubscribePubDB (ctx , & service , pubInstanceId )
41
+
33
42
database , err := service .DescribeDBsOfInstance (ctx , subInstanceId )
34
43
if err != nil {
35
44
return err
@@ -59,6 +68,34 @@ func init() {
59
68
})
60
69
}
61
70
71
+ func testAccUnsubscribePubDB (ctx context.Context , service * SqlserverService , instanceId string ) {
72
+
73
+ pubsubs , err := service .DescribeSqlserverPublishSubscribes (ctx , map [string ]interface {}{
74
+ "instanceId" : instanceId ,
75
+ })
76
+
77
+ if len (pubsubs ) == 0 {
78
+ log .Printf ("NO pubsub result" )
79
+ return
80
+ }
81
+
82
+ pubSubId := * pubsubs [0 ].Id
83
+
84
+ pubSub := & sqlserver.PublishSubscribe {
85
+ Id : & pubSubId ,
86
+ }
87
+ tuples := []* sqlserver.DatabaseTuple {
88
+ {
89
+ helper .String (defaultSQLServerPubSubDB ),
90
+ helper .String (defaultSQLServerPubSubDB ),
91
+ },
92
+ }
93
+ err = service .DeletePublishSubscribe (ctx , pubSub , tuples )
94
+ if err != nil {
95
+ fmt .Printf ("[ERROR] %s" , err .Error ())
96
+ }
97
+ }
98
+
62
99
func TestAccTencentCloudSqlserverPublishSubscribeResource (t * testing.T ) {
63
100
resource .Test (t , resource.TestCase {
64
101
PreCheck : func () { testAccPreCheck (t ) },
0 commit comments