Skip to content

Commit 3c7088d

Browse files
authored
fix: tcaplus testcases (#1000)
1 parent bf04115 commit 3c7088d

9 files changed

+133
-263
lines changed

tencentcloud/basic_test.go

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -453,3 +453,41 @@ locals {
453453
`
454454

455455
// End of TCR Service
456+
457+
// TcaPlus DB
458+
459+
const defaultTcaPlusClusterName = "keep-tcaplus-cluster"
460+
const defaultTcaPlusClusterTableGroup = "keep_table_group"
461+
const defaultTcaPlusClusterTable = "keep_players"
462+
const defaultTcaPlusVar = `
463+
variable "tcaplus_cluster" {
464+
default = "` + defaultTcaPlusClusterName + `"
465+
}
466+
467+
variable "tcaplus_table_group" {
468+
default = "` + defaultTcaPlusClusterTableGroup + `"
469+
}
470+
471+
variable "tcaplus_table" {
472+
default = "` + defaultTcaPlusClusterTable + `"
473+
}
474+
`
475+
const defaultTcaPlusData = defaultTcaPlusVar + `
476+
data "tencentcloud_tcaplus_clusters" "tcaplus" {
477+
cluster_name = var.tcaplus_cluster
478+
}
479+
480+
data "tencentcloud_tcaplus_tablegroups" "group" {
481+
cluster_id = data.tencentcloud_tcaplus_clusters.tcaplus.list.0.cluster_id
482+
tablegroup_name = var.tcaplus_table_group
483+
}
484+
485+
locals {
486+
tcaplus_id = data.tencentcloud_tcaplus_clusters.tcaplus.list.0.cluster_id
487+
tcaplus_table_group = var.tcaplus_table_group
488+
tcaplus_table_group_id = data.tencentcloud_tcaplus_tablegroups.group.list.0.tablegroup_id
489+
tcaplus_table = var.tcaplus_table
490+
}
491+
`
492+
493+
// End of TcaPlus DB

tencentcloud/data_source_tc_tcaplus_clusters_test.go

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

9-
var testDataTcaplusClustersName = "data.tencentcloud_tcaplus_clusters.id_test"
9+
var testDataTcaplusClustersName = "data.tencentcloud_tcaplus_clusters.tcaplus"
1010

11-
func TestAccTencentCloudDataTcaplusClusters(t *testing.T) {
11+
func TestAccTencentCloudTcaplusClustersData(t *testing.T) {
1212
t.Parallel()
1313
resource.Test(t, resource.TestCase{
1414
PreCheck: func() { testAccPreCheck(t) },
1515
Providers: testAccProviders,
1616
CheckDestroy: testAccCheckTcaplusClusterDestroy,
1717
Steps: []resource.TestStep{
1818
{
19-
Config: testAccTencentCloudDataTcaplusClustersBaic,
19+
Config: testAccTencentCloudDataTcaplusClustersBasic,
2020
Check: resource.ComposeAggregateTestCheckFunc(
21-
testAccCheckTcaplusClusterExists("tencentcloud_tcaplus_cluster.test_cluster"),
22-
resource.TestCheckResourceAttrSet(testDataTcaplusClustersName, "cluster_id"),
21+
resource.TestCheckResourceAttr(testDataTcaplusClustersName, "cluster_name", defaultTcaPlusClusterName),
2322
resource.TestCheckResourceAttr(testDataTcaplusClustersName, "list.#", "1"),
24-
resource.TestCheckResourceAttr(testDataTcaplusClustersName, "list.0.cluster_name", "tf_tcaplus_data_guagua"),
23+
resource.TestCheckResourceAttrSet(testDataTcaplusClustersName, "list.0.cluster_id"),
24+
resource.TestCheckResourceAttr(testDataTcaplusClustersName, "list.0.cluster_name", defaultTcaPlusClusterName),
2525
resource.TestCheckResourceAttr(testDataTcaplusClustersName, "list.0.idl_type", "PROTO"),
2626
resource.TestCheckResourceAttrSet(testDataTcaplusClustersName, "list.0.network_type"),
2727
resource.TestCheckResourceAttrSet(testDataTcaplusClustersName, "list.0.create_time"),
@@ -35,25 +35,4 @@ func TestAccTencentCloudDataTcaplusClusters(t *testing.T) {
3535
})
3636
}
3737

38-
const testAccTencentCloudDataTcaplusClustersBaic = `
39-
variable "availability_zone" {
40-
default = "ap-guangzhou-3"
41-
}
42-
43-
data "tencentcloud_vpc_subnets" "vpc" {
44-
is_default = true
45-
availability_zone = var.availability_zone
46-
}
47-
48-
resource "tencentcloud_tcaplus_cluster" "test_cluster" {
49-
idl_type = "PROTO"
50-
cluster_name = "tf_tcaplus_data_guagua"
51-
vpc_id = data.tencentcloud_vpc_subnets.vpc.instance_list.0.vpc_id
52-
subnet_id = data.tencentcloud_vpc_subnets.vpc.instance_list.0.subnet_id
53-
password = "1qaA2k1wgvfa3ZZZ"
54-
old_password_expire_last = 3600
55-
}
56-
data "tencentcloud_tcaplus_clusters" "id_test" {
57-
cluster_id = tencentcloud_tcaplus_cluster.test_cluster.id
58-
}
59-
`
38+
const testAccTencentCloudDataTcaplusClustersBasic = defaultTcaPlusData

tencentcloud/data_source_tc_tcaplus_idls_test.go

Lines changed: 7 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import (
88

99
var testDataTcaplusIdlsName = "data.tencentcloud_tcaplus_idls.id_test"
1010

11-
func TestAccTencentCloudDataTcaplusIdls(t *testing.T) {
11+
func TestAccTencentCloudTcaplusIdlsData(t *testing.T) {
1212
t.Parallel()
1313
resource.Test(t, resource.TestCase{
1414
PreCheck: func() { testAccPreCheck(t) },
@@ -27,40 +27,19 @@ func TestAccTencentCloudDataTcaplusIdls(t *testing.T) {
2727
})
2828
}
2929

30-
const testAccTencentCloudDataTcaplusIdlsBaic = `
31-
variable "availability_zone" {
32-
default = "ap-guangzhou-3"
33-
}
34-
35-
data "tencentcloud_vpc_subnets" "vpc" {
36-
is_default = true
37-
availability_zone = var.availability_zone
38-
}
30+
const testAccTencentCloudDataTcaplusIdlsBaic = defaultTcaPlusData + `
3931
40-
resource "tencentcloud_tcaplus_tablegroup" "test_group" {
41-
cluster_id = tencentcloud_tcaplus_cluster.test_cluster.id
42-
tablegroup_name = "tf_test_group_name_guagua"
43-
}
44-
45-
resource "tencentcloud_tcaplus_cluster" "test_cluster" {
46-
idl_type = "PROTO"
47-
cluster_name = "tf_tcaplus_data_guagua"
48-
vpc_id = data.tencentcloud_vpc_subnets.vpc.instance_list.0.vpc_id
49-
subnet_id = data.tencentcloud_vpc_subnets.vpc.instance_list.0.subnet_id
50-
password = "1qaA2k1wgvfa3ZZZ"
51-
old_password_expire_last = 3600
52-
}
5332
resource "tencentcloud_tcaplus_idl" "test_idl" {
54-
cluster_id = tencentcloud_tcaplus_cluster.test_cluster.id
55-
tablegroup_id = tencentcloud_tcaplus_tablegroup.test_group.id
33+
cluster_id = local.tcaplus_id
34+
tablegroup_id = local.tcaplus_table_group_id
5635
file_name = "tf_idl_test_guagua"
5736
file_type = "PROTO"
5837
file_ext_type = "proto"
5938
file_content = <<EOF
6039
syntax = "proto2";
6140
package myTcaplusTable;
6241
import "tcaplusservice.optionv1.proto";
63-
message tb_online_guagua {
42+
message tb_online_datasource {
6443
option(tcaplusservice.tcaplus_primary_key) = "uin,name,region";
6544
required int64 uin = 1;
6645
required string name = 2;
@@ -69,10 +48,10 @@ resource "tencentcloud_tcaplus_idl" "test_idl" {
6948
optional int32 logintime = 5 [default = 1];
7049
repeated int64 lockid = 6 [packed = true];
7150
optional bool is_available = 7 [default = false];
72-
optional pay_info pay = 8;
51+
optional pay_info_datasource pay = 8;
7352
}
7453
75-
message pay_info {
54+
message pay_info_datasource {
7655
required int64 pay_id = 1;
7756
optional uint64 total_money = 2;
7857
optional uint64 pay_times = 3;

tencentcloud/data_source_tc_tcaplus_tablegroups_test.go

Lines changed: 8 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -8,22 +8,21 @@ import (
88

99
var testDataTcaplusGroupsName = "data.tencentcloud_tcaplus_tablegroups.id_test"
1010

11-
func TestAccTencentCloudDataTcaplusGroups(t *testing.T) {
11+
func TestAccTencentCloudTcaplusGroupsData(t *testing.T) {
1212
t.Parallel()
1313
resource.Test(t, resource.TestCase{
1414
PreCheck: func() { testAccPreCheck(t) },
1515
Providers: testAccProviders,
1616
CheckDestroy: testAccCheckTcaplusGroupDestroy,
1717
Steps: []resource.TestStep{
1818
{
19-
Config: testAccTencentCloudDataTcaplusGroupsBaic,
19+
Config: testAccTencentCloudDataTcaplusGroupsBasic,
2020
Check: resource.ComposeAggregateTestCheckFunc(
21-
testAccCheckTcaplusGroupExists("tencentcloud_tcaplus_tablegroup.test_group"),
2221
resource.TestCheckResourceAttrSet(testDataTcaplusGroupsName, "cluster_id"),
2322
resource.TestCheckResourceAttrSet(testDataTcaplusGroupsName, "tablegroup_id"),
24-
resource.TestCheckResourceAttr(testDataTcaplusGroupsName, "list.#", "1"),
25-
resource.TestCheckResourceAttr(testDataTcaplusGroupsName, "list.0.tablegroup_name", "tf_test_group_name_guagua"),
26-
resource.TestCheckResourceAttr(testDataTcaplusGroupsName, "list.0.table_count", "0"),
23+
resource.TestCheckResourceAttrSet(testDataTcaplusGroupsName, "list.#"),
24+
resource.TestCheckResourceAttrSet(testDataTcaplusGroupsName, "list.0.tablegroup_name"),
25+
resource.TestCheckResourceAttrSet(testDataTcaplusGroupsName, "list.0.table_count"),
2726
resource.TestCheckResourceAttrSet(testDataTcaplusGroupsName, "list.0.tablegroup_id"),
2827
resource.TestCheckResourceAttrSet(testDataTcaplusGroupsName, "list.0.total_size"),
2928
resource.TestCheckResourceAttrSet(testDataTcaplusGroupsName, "list.0.create_time"),
@@ -33,30 +32,10 @@ func TestAccTencentCloudDataTcaplusGroups(t *testing.T) {
3332
})
3433
}
3534

36-
const testAccTencentCloudDataTcaplusGroupsBaic = `
37-
variable "availability_zone" {
38-
default = "ap-guangzhou-3"
39-
}
40-
41-
data "tencentcloud_vpc_subnets" "vpc" {
42-
is_default = true
43-
availability_zone = var.availability_zone
44-
}
45-
resource "tencentcloud_tcaplus_cluster" "test_cluster" {
46-
idl_type = "PROTO"
47-
cluster_name = "tf_tcaplus_data_guagua"
48-
vpc_id = data.tencentcloud_vpc_subnets.vpc.instance_list.0.vpc_id
49-
subnet_id = data.tencentcloud_vpc_subnets.vpc.instance_list.0.subnet_id
50-
password = "1qaA2k1wgvfa3ZZZ"
51-
old_password_expire_last = 3600
52-
}
53-
resource "tencentcloud_tcaplus_tablegroup" "test_group" {
54-
cluster_id = tencentcloud_tcaplus_cluster.test_cluster.id
55-
tablegroup_name = "tf_test_group_name_guagua"
56-
}
35+
const testAccTencentCloudDataTcaplusGroupsBasic = defaultTcaPlusData + `
5736
5837
data "tencentcloud_tcaplus_tablegroups" "id_test" {
59-
cluster_id = tencentcloud_tcaplus_cluster.test_cluster.id
60-
tablegroup_id = tencentcloud_tcaplus_tablegroup.test_group.id
38+
cluster_id = local.tcaplus_id
39+
tablegroup_id = local.tcaplus_table_group_id
6140
}
6241
`

tencentcloud/data_source_tc_tcaplus_tables_test.go

Lines changed: 12 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -8,32 +8,30 @@ import (
88

99
var testDataTcaplusTablesName = "data.tencentcloud_tcaplus_tables.id_test"
1010

11-
func TestAccTencentCloudDataTcaplusTables(t *testing.T) {
11+
func TestAccTencentCloudTcaplusTablesData(t *testing.T) {
1212
t.Parallel()
1313
resource.Test(t, resource.TestCase{
1414
PreCheck: func() { testAccPreCheck(t) },
1515
Providers: testAccProviders,
1616
CheckDestroy: testAccCheckTcaplusTableDestroy,
1717
Steps: []resource.TestStep{
1818
{
19-
Config: testAccTencentCloudDataTcaplusTablesBaic,
19+
Config: testAccTencentCloudDataTcaplusTablesBasic,
2020
Check: resource.ComposeAggregateTestCheckFunc(
21-
testAccCheckTcaplusTableExists("tencentcloud_tcaplus_table.test_table"),
2221
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "cluster_id"),
23-
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "table_id"),
24-
resource.TestCheckResourceAttr(testDataTcaplusTablesName, "list.#", "1"),
22+
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "table_name"),
23+
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.#"),
2524
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.0.tablegroup_id"),
2625
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.0.table_id"),
27-
resource.TestCheckResourceAttr(testDataTcaplusTablesName, "list.0.table_name", "tb_online_guagua"),
26+
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.0.table_name"),
2827
resource.TestCheckResourceAttr(testDataTcaplusTablesName, "list.0.table_type", "GENERIC"),
29-
resource.TestCheckResourceAttr(testDataTcaplusTablesName, "list.0.description", "test"),
28+
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.0.description"),
3029
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.0.idl_id"),
3130
resource.TestCheckResourceAttr(testDataTcaplusTablesName, "list.0.table_idl_type", "PROTO"),
32-
resource.TestCheckResourceAttr(testDataTcaplusTablesName, "list.0.reserved_read_cu", "1000"),
33-
resource.TestCheckResourceAttr(testDataTcaplusTablesName, "list.0.reserved_write_cu", "20"),
34-
resource.TestCheckResourceAttr(testDataTcaplusTablesName, "list.0.reserved_volume", "1"),
31+
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.0.reserved_read_cu"),
32+
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.0.reserved_write_cu"),
33+
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.0.reserved_volume"),
3534
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.0.create_time"),
36-
resource.TestCheckResourceAttr(testDataTcaplusTablesName, "list.0.error", ""),
3735
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.0.status"),
3836
resource.TestCheckResourceAttrSet(testDataTcaplusTablesName, "list.0.table_size"),
3937
),
@@ -42,79 +40,9 @@ func TestAccTencentCloudDataTcaplusTables(t *testing.T) {
4240
})
4341
}
4442

45-
const testAccTencentCloudDataTcaplusTablesBaic = `
46-
variable "availability_zone" {
47-
default = "ap-guangzhou-3"
48-
}
49-
50-
data "tencentcloud_vpc_subnets" "vpc" {
51-
is_default = true
52-
availability_zone = var.availability_zone
53-
}
54-
55-
resource "tencentcloud_tcaplus_cluster" "test_cluster" {
56-
idl_type = "PROTO"
57-
cluster_name = "tf_tcaplus_data_guagua"
58-
vpc_id = data.tencentcloud_vpc_subnets.vpc.instance_list.0.vpc_id
59-
subnet_id = data.tencentcloud_vpc_subnets.vpc.instance_list.0.subnet_id
60-
password = "1qaA2k1wgvfa3ZZZ"
61-
old_password_expire_last = 3600
62-
}
63-
resource "tencentcloud_tcaplus_idl" "test_idl" {
64-
cluster_id = tencentcloud_tcaplus_cluster.test_cluster.id
65-
tablegroup_id = tencentcloud_tcaplus_tablegroup.test_group.id
66-
file_name = "tf_idl_test_guagua"
67-
file_type = "PROTO"
68-
file_ext_type = "proto"
69-
file_content = <<EOF
70-
syntax = "proto2";
71-
package myTcaplusTable;
72-
import "tcaplusservice.optionv1.proto";
73-
message tb_online_guagua {
74-
option(tcaplusservice.tcaplus_primary_key) = "uin,name,region";
75-
required int64 uin = 1;
76-
required string name = 2;
77-
required int32 region = 3;
78-
required int32 gamesvrid = 4;
79-
optional int32 logintime = 5 [default = 1];
80-
repeated int64 lockid = 6 [packed = true];
81-
optional bool is_available = 7 [default = false];
82-
optional pay_info pay = 8;
83-
}
84-
85-
message pay_info {
86-
required int64 pay_id = 1;
87-
optional uint64 total_money = 2;
88-
optional uint64 pay_times = 3;
89-
optional pay_auth_info auth = 4;
90-
message pay_auth_info {
91-
required string pay_keys = 1;
92-
optional int64 update_time = 2;
93-
}
94-
}
95-
EOF
96-
}
97-
98-
resource "tencentcloud_tcaplus_table" "test_table" {
99-
cluster_id = tencentcloud_tcaplus_cluster.test_cluster.id
100-
tablegroup_id = tencentcloud_tcaplus_tablegroup.test_group.id
101-
table_name = "tb_online_guagua"
102-
table_type = "GENERIC"
103-
description = "test"
104-
idl_id = tencentcloud_tcaplus_idl.test_idl.id
105-
table_idl_type = "PROTO"
106-
reserved_read_cu = 1000
107-
reserved_write_cu = 20
108-
reserved_volume = 1
109-
}
110-
111-
resource "tencentcloud_tcaplus_tablegroup" "test_group" {
112-
cluster_id = tencentcloud_tcaplus_cluster.test_cluster.id
113-
tablegroup_name = "tf_test_group_name_guagua"
114-
}
115-
43+
const testAccTencentCloudDataTcaplusTablesBasic = defaultTcaPlusData + `
11644
data "tencentcloud_tcaplus_tables" "id_test" {
117-
cluster_id = tencentcloud_tcaplus_cluster.test_cluster.id
118-
table_id = tencentcloud_tcaplus_table.test_table.id
45+
cluster_id = local.tcaplus_id
46+
table_name = local.tcaplus_table
11947
}
12048
`

0 commit comments

Comments
 (0)