Skip to content

Commit dfd1cb2

Browse files
authored
add sweeper and change prefix for dcdb test case (#1377)
1 parent dd688e3 commit dfd1cb2

9 files changed

+90
-10
lines changed

tencentcloud/data_source_tc_dcdb_accounts_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
88
)
99

10-
func TestAccTencentCloudDcdbAccountsDataSource(t *testing.T) {
10+
func TestAccTencentCloudDCDBAccountsDataSource(t *testing.T) {
1111
t.Parallel()
1212

1313
resource.Test(t, resource.TestCase{
@@ -37,7 +37,7 @@ func TestAccTencentCloudDcdbAccountsDataSource(t *testing.T) {
3737

3838
const testAccDataSourceDcdbAccounts = `
3939
resource "tencentcloud_dcdb_account" "basic" {
40-
instance_id = "%s" # use the hard code before the dcdb_instance resource is ready.
40+
instance_id = "%s"
4141
user_name = "mysql_ds"
4242
host = "127.0.0.1"
4343
password = "===password==="

tencentcloud/data_source_tc_dcdb_databases_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
88
)
99

10-
func TestAccTencentCloudDcdbDatabasesDataSource(t *testing.T) {
10+
func TestAccTencentCloudDCDBDatabasesDataSource(t *testing.T) {
1111
t.Parallel()
1212

1313
resource.Test(t, resource.TestCase{

tencentcloud/data_source_tc_dcdb_instances_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
88
)
99

10-
func TestAccTencentCloudDcdbInstancesDataSource(t *testing.T) {
10+
func TestAccTencentCloudDCDBInstancesDataSource(t *testing.T) {
1111
t.Parallel()
1212

1313
resource.Test(t, resource.TestCase{

tencentcloud/data_source_tc_dcdb_parameters_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
88
)
99

10-
func TestAccTencentCloudDcdbParametersDataSource(t *testing.T) {
10+
func TestAccTencentCloudDCDBParametersDataSource(t *testing.T) {
1111
t.Parallel()
1212

1313
resource.Test(t, resource.TestCase{

tencentcloud/data_source_tc_dcdb_security_groups_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
88
)
99

10-
func TestAccTencentCloudDcdbSecurityGroupsDataSource(t *testing.T) {
10+
func TestAccTencentCloudDCDBSecurityGroupsDataSource(t *testing.T) {
1111
t.Parallel()
1212

1313
resource.Test(t, resource.TestCase{

tencentcloud/data_source_tc_dcdb_shards_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
88
)
99

10-
func TestAccTencentCloudDcdbShardsDataSource(t *testing.T) {
10+
func TestAccTencentCloudDCDBShardsDataSource(t *testing.T) {
1111
t.Parallel()
1212

1313
resource.Test(t, resource.TestCase{

tencentcloud/resource_tc_dcdb_account_test.go

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,44 @@ import (
1010
"github.com/hashicorp/terraform-plugin-sdk/terraform"
1111
)
1212

13-
func TestAccTencentCloudDcdbAccountResource(t *testing.T) {
13+
func init() {
14+
resource.AddTestSweepers("tencentcloud_dcdb_account", &resource.Sweeper{
15+
Name: "tencentcloud_dcdb_account",
16+
F: testSweepDCDBAccount,
17+
})
18+
}
19+
20+
// go test -v ./tencentcloud -sweep=ap-guangzhou -sweep-run=tencentcloud_dcdb_account
21+
func testSweepDCDBAccount(r string) error {
22+
logId := getLogId(contextNil)
23+
ctx := context.WithValue(context.TODO(), logIdKey, logId)
24+
cli, _ := sharedClientForRegion(r)
25+
dcdbService := DcdbService{client: cli.(*TencentCloudClient).apiV3Conn}
26+
27+
account, err := dcdbService.DescribeDcdbAccount(ctx, defaultDcdbInstanceId, "")
28+
if err != nil {
29+
return err
30+
}
31+
if account == nil {
32+
return fmt.Errorf("dcdb account not exists. instanceId:[%s]", defaultDcdbInstanceId)
33+
}
34+
35+
for _, v := range account.Users {
36+
err := resource.Retry(readRetryTimeout, func() *resource.RetryError {
37+
err := dcdbService.DeleteDcdbAccountById(ctx, defaultDcdbInstanceId, *v.UserName, *v.Host)
38+
if err != nil {
39+
return retryError(err)
40+
}
41+
return nil
42+
})
43+
if err != nil {
44+
return fmt.Errorf("[ERROR] delete dcdb account %s reason:[%s]", *v.UserName, err.Error())
45+
}
46+
}
47+
return nil
48+
}
49+
50+
func TestAccTencentCloudDCDBAccountResource(t *testing.T) {
1451
t.Parallel()
1552

1653
resource.Test(t, resource.TestCase{

tencentcloud/resource_tc_dcdb_hourdb_instance_test.go

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,56 @@ package tencentcloud
33
import (
44
"context"
55
"fmt"
6+
"strings"
67
"testing"
78

89
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
910
"github.com/hashicorp/terraform-plugin-sdk/terraform"
1011
)
1112

12-
func TestAccTencentCloudDcdbHourdbInstance_basic(t *testing.T) {
13+
func init() {
14+
resource.AddTestSweepers("tencentcloud_dcdb_hourdb_instance", &resource.Sweeper{
15+
Name: "tencentcloud_dcdb_hourdb_instance",
16+
F: testSweepDCDBHourdbInstance,
17+
})
18+
}
19+
20+
// go test -v ./tencentcloud -sweep=ap-guangzhou -sweep-run=tencentcloud_dcdb_hourdb_instance
21+
func testSweepDCDBHourdbInstance(r string) error {
22+
logId := getLogId(contextNil)
23+
ctx := context.WithValue(context.TODO(), logIdKey, logId)
24+
cli, _ := sharedClientForRegion(r)
25+
dcdbService := DcdbService{client: cli.(*TencentCloudClient).apiV3Conn}
26+
27+
instances, err := dcdbService.DescribeDcdbInstancesByFilter(ctx, nil)
28+
if err != nil {
29+
return err
30+
}
31+
if instances == nil {
32+
return fmt.Errorf("dcdb hourdb instance not exists.")
33+
}
34+
35+
for _, v := range instances {
36+
delId := *v.InstanceId
37+
delName := *v.InstanceName
38+
39+
if strings.HasPrefix(delName, "test_dcdc_") {
40+
err := resource.Retry(readRetryTimeout, func() *resource.RetryError {
41+
err := dcdbService.DeleteDcdbHourdbInstanceById(ctx, delId)
42+
if err != nil {
43+
return retryError(err)
44+
}
45+
return nil
46+
})
47+
if err != nil {
48+
return fmt.Errorf("[ERROR] delete dcdb hourdb instance %s failed! reason:[%s]", delId, err.Error())
49+
}
50+
}
51+
}
52+
return nil
53+
}
54+
55+
func TestAccTencentCloudDCDBHourdbInstance_basic(t *testing.T) {
1356
t.Parallel()
1457

1558
resource.Test(t, resource.TestCase{

tencentcloud/resource_tc_dcdb_security_group_attachment_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import (
1010
"github.com/hashicorp/terraform-plugin-sdk/terraform"
1111
)
1212

13-
func TestAccTencentCloudDcdbSecurityGroupAttachmentResource(t *testing.T) {
13+
func TestAccTencentCloudDCDBSecurityGroupAttachmentResource(t *testing.T) {
1414
t.Parallel()
1515

1616
resource.Test(t, resource.TestCase{

0 commit comments

Comments
 (0)