Skip to content

Commit

Permalink
Support sweep test method (#666)
Browse files Browse the repository at this point in the history
* Add sweeper for some test case

* Improve sweep test
  • Loading branch information
xiaozhu36 authored Sep 6, 2018
1 parent e08ce0a commit 35f6683
Show file tree
Hide file tree
Showing 93 changed files with 2,571 additions and 381 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ FEATURES:

IMPROVEMENTS:

- Support sweep test method ([#666](https://github.com/alibaba/terraform-provider/pull/666))
- Base64 encode ESS scaling config user_data ([#632](https://github.com/alibaba/terraform-provider/pull/632))
- Reback website ([#655](https://github.com/alibaba/terraform-provider/pull/655))
- Retrieve the account_id automatically if needed ([#631](https://github.com/alibaba/terraform-provider/pull/631))
Expand Down
45 changes: 45 additions & 0 deletions alicloud/alicloud_sweeper_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
package alicloud

import (
"fmt"
"os"
"testing"

"github.com/denverdino/aliyungo/common"
"github.com/hashicorp/terraform/helper/resource"
)

func TestMain(m *testing.M) {
resource.TestMain(m)
}

// sharedClientForRegion returns a common AWSClient setup needed for the sweeper
// functions for a given region
func sharedClientForRegion(region string) (interface{}, error) {
var accessKey, secretKey string
if accessKey = os.Getenv("ALICLOUD_ACCESS_KEY"); accessKey == "" {
return nil, fmt.Errorf("empty ALICLOUD_ACCESS_KEY")
}

if secretKey = os.Getenv("ALICLOUD_SECRET_KEY"); secretKey == "" {
return nil, fmt.Errorf("empty ALICLOUD_SECRET_KEY")
}

conf := Config{
Region: common.Region(region),
RegionId: region,
AccessKey: accessKey,
SecretKey: secretKey,
}
if accountId := os.Getenv("ALICLOUD_ACCOUNT_ID"); accountId != "" {
conf.AccountId = accountId
}

// configures a default client for the region, using the above env vars
client, err := conf.Client()
if err != nil {
return nil, err
}

return client, nil
}
4 changes: 2 additions & 2 deletions alicloud/data_source_alicloud_db_instances_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ func TestAccAlicloudDBInstancesDataSource(t *testing.T) {
resource.TestCheckResourceAttr("data.alicloud_db_instances.dbs", "instances.0.instance_type", "rds.mysql.t1.small"),
resource.TestCheckResourceAttr("data.alicloud_db_instances.dbs", "instances.0.engine", string(MySQL)),
resource.TestCheckResourceAttr("data.alicloud_db_instances.dbs", "instances.0.engine_version", "5.6"),
resource.TestCheckResourceAttr("data.alicloud_db_instances.dbs", "instances.0.name", "data-server"),
resource.TestCheckResourceAttr("data.alicloud_db_instances.dbs", "instances.0.name", "tf-testAccCheckAlicloudDBInstancesDataSourceConfig"),
resource.TestCheckResourceAttr("data.alicloud_db_instances.dbs", "instances.0.charge_type", string(Postpaid)),
),
},
Expand All @@ -39,7 +39,7 @@ resource "alicloud_db_instance" "db" {
engine_version = "5.6"
instance_type = "rds.mysql.t1.small"
instance_storage = "10"
instance_name = "data-server"
instance_name = "tf-testAccCheckAlicloudDBInstancesDataSourceConfig"
instance_charge_type = "Postpaid"
}
`
1 change: 1 addition & 0 deletions alicloud/data_source_alicloud_eips_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ func TestAccAlicloudEIPsDataSource(t *testing.T) {

const testAccCheckAlicloudEipsDataSourceConfig = `
resource "alicloud_eip" "eip" {
name = "tf-testAccCheckAlicloudEipsDataSourceConfig"
count = 2
bandwidth = 5
}
Expand Down
7 changes: 5 additions & 2 deletions alicloud/data_source_alicloud_instances_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -56,14 +56,15 @@ data "alicloud_instance_types" "default" {
memory_size = 2
}
variable "name" {
default = "testAccCheckAlicloudInstancesDataSourceVpcId"
default = "tf-testAccCheckAlicloudInstancesDataSourceVpcId"
}
resource "alicloud_vpc" "foo" {
name = "${var.name}"
cidr_block = "172.16.0.0/12"
}
resource "alicloud_vswitch" "foo" {
name = "${var.name}"
vpc_id = "${alicloud_vpc.foo.id}"
cidr_block = "172.16.0.0/16"
availability_zone = "${data.alicloud_zones.default.zones.0.id}"
Expand Down Expand Up @@ -106,7 +107,7 @@ data "alicloud_instance_types" "default" {
memory_size = 2
}
variable "name" {
default = "testAccCheckAlicloudImagesDataSourceTags"
default = "tf-testAccCheckAlicloudImagesDataSourceTags"
}
resource "alicloud_vpc" "foo" {
name = "${var.name}"
Expand All @@ -117,10 +118,12 @@ resource "alicloud_vswitch" "foo" {
vpc_id = "${alicloud_vpc.foo.id}"
cidr_block = "172.16.0.0/21"
availability_zone = "${data.alicloud_zones.default.zones.0.id}"
name = "${var.name}"
}
resource "alicloud_security_group" "tf_test_foo" {
vpc_id = "${alicloud_vpc.foo.id}"
name = "${var.name}"
}
resource "alicloud_instance" "foo" {
Expand Down
4 changes: 2 additions & 2 deletions alicloud/data_source_alicloud_key_pairs_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ func TestAccAlicloudKeyPairsDataSource_basic(t *testing.T) {
Check: resource.ComposeTestCheckFunc(
testAccCheckKeyPairExists("alicloud_key_pair.basic", &keypair),
testAccCheckAlicloudDataSourceID("data.alicloud_key_pairs.name_regex"),
resource.TestCheckResourceAttr("data.alicloud_key_pairs.name_regex", "key_pairs.0.key_name", "terraform-test-key-pair-datasource"),
resource.TestCheckResourceAttr("data.alicloud_key_pairs.name_regex", "key_pairs.0.key_name", "tf-testAcc-key-pair-datasource"),
),
},
},
Expand All @@ -31,7 +31,7 @@ func TestAccAlicloudKeyPairsDataSource_basic(t *testing.T) {

const testAccCheckAlicloudKeyPairsDataSourceBasic = `
resource "alicloud_key_pair" "basic" {
key_name = "terraform-test-key-pair-datasource"
key_name = "tf-testAcc-key-pair-datasource"
}
data "alicloud_key_pairs" "name_regex" {
name_regex = "${alicloud_key_pair.basic.id}"
Expand Down
2 changes: 1 addition & 1 deletion alicloud/data_source_alicloud_pvtz_zone_records_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ func TestAccAlicloudPvtzZoneRecordsDataSource_basic(t *testing.T) {

const testAccCheckAlicloudPvtzZoneRecordsDataSourceBasic = `
resource "alicloud_pvtz_zone" "basic" {
name = "basic.test.com"
name = "tf-testacc.test.com"
}
resource "alicloud_pvtz_zone_record" "foo" {
Expand Down
4 changes: 2 additions & 2 deletions alicloud/data_source_alicloud_pvtz_zones_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ func TestAccAlicloudPvtzZonesDataSource_basic(t *testing.T) {
Check: resource.ComposeTestCheckFunc(
testAccAlicloudPvtzZoneExists("alicloud_pvtz_zone.basic", &pvtzZone),
testAccCheckAlicloudDataSourceID("data.alicloud_pvtz_zones.keyword"),
resource.TestCheckResourceAttr("data.alicloud_pvtz_zones.keyword", "zones.0.name", "basic.test.com"),
resource.TestCheckResourceAttr("data.alicloud_pvtz_zones.keyword", "zones.0.name", "tf-testacc.test.com"),
),
},
},
Expand All @@ -36,7 +36,7 @@ func TestAccAlicloudPvtzZonesDataSource_basic(t *testing.T) {

const testAccCheckAlicloudPvtzZoneDataSourceBasic = `
resource "alicloud_pvtz_zone" "basic" {
name = "basic.test.com"
name = "tf-testacc.test.com"
}
data "alicloud_pvtz_zones" "keyword" {
keyword = "${alicloud_pvtz_zone.basic.name}"
Expand Down
10 changes: 5 additions & 5 deletions alicloud/data_source_alicloud_ram_groups_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ func TestAccAlicloudRamGroupsDataSource_for_user(t *testing.T) {
Check: resource.ComposeTestCheckFunc(
testAccCheckAlicloudDataSourceID("data.alicloud_ram_groups.group"),
resource.TestCheckResourceAttr("data.alicloud_ram_groups.group", "groups.#", "1"),
resource.TestCheckResourceAttr("data.alicloud_ram_groups.group", "groups.0.name", "testAccCheckAlicloudRamGroupsDataSourceForUserConfig"),
resource.TestCheckResourceAttr("data.alicloud_ram_groups.group", "groups.0.name", "tf-testAccCheckAlicloudRamGroupsDataSourceForUserConfig"),
resource.TestCheckResourceAttr("data.alicloud_ram_groups.group", "groups.0.comments", "group comments"),
),
},
Expand All @@ -38,7 +38,7 @@ func TestAccAlicloudRamGroupsDataSource_for_policy(t *testing.T) {
Check: resource.ComposeTestCheckFunc(
testAccCheckAlicloudDataSourceID("data.alicloud_ram_groups.group"),
resource.TestCheckResourceAttr("data.alicloud_ram_groups.group", "groups.#", "1"),
resource.TestCheckResourceAttr("data.alicloud_ram_groups.group", "groups.0.name", "testAccCheckAlicloudRamGroupsDataSourceForPolicyConfig"),
resource.TestCheckResourceAttr("data.alicloud_ram_groups.group", "groups.0.name", "tf-testAccCheckAlicloudRamGroupsDataSourceForPolicyConfig"),
resource.TestCheckResourceAttr("data.alicloud_ram_groups.group", "groups.0.comments", "group comments"),
),
},
Expand Down Expand Up @@ -83,7 +83,7 @@ func TestAccAlicloudRamGroupsDataSource_group_name_regex(t *testing.T) {

const testAccCheckAlicloudRamGroupsDataSourceForUserConfig = `
variable "name" {
default = "testAccCheckAlicloudRamGroupsDataSourceForUserConfig"
default = "tf-testAccCheckAlicloudRamGroupsDataSourceForUserConfig"
}
resource "alicloud_ram_user" "user" {
name = "${var.name}"
Expand All @@ -109,7 +109,7 @@ data "alicloud_ram_groups" "group" {

const testAccCheckAlicloudRamGroupsDataSourceForPolicyConfig = `
variable "name" {
default = "testAccCheckAlicloudRamGroupsDataSourceForPolicyConfig"
default = "tf-testAccCheckAlicloudRamGroupsDataSourceForPolicyConfig"
}
resource "alicloud_ram_policy" "policy" {
name = "${var.name}"
Expand Down Expand Up @@ -149,7 +149,7 @@ data "alicloud_ram_groups" "group" {

const testAccCheckAlicloudRamGroupsDataSourceGroupNameRegexConfig = `
resource "alicloud_ram_group" "group" {
name = "testAccCheckAlicloudRamGroupsDataSourceGroupNameRegexConfig"
name = "tf-testAccCheckAlicloudRamGroupsDataSourceGroupNameRegexConfig"
comments = "group comments"
force=true
}
Expand Down
12 changes: 6 additions & 6 deletions alicloud/data_source_alicloud_ram_policies_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ func TestAccAlicloudRamPoliciesDataSource_for_group(t *testing.T) {
Check: resource.ComposeTestCheckFunc(
testAccCheckAlicloudDataSourceID("data.alicloud_ram_policies.policy"),
resource.TestCheckResourceAttr("data.alicloud_ram_policies.policy", "policies.#", "1"),
resource.TestCheckResourceAttr("data.alicloud_ram_policies.policy", "policies.0.name", "testAccCheckAlicloudRamPoliciessDataSourceForGroupConfig"),
resource.TestCheckResourceAttr("data.alicloud_ram_policies.policy", "policies.0.name", "tf-testAccCheckAlicloudRamPoliciessDataSourceForGroupConfig"),
resource.TestCheckResourceAttr("data.alicloud_ram_policies.policy", "policies.0.type", "Custom"),
),
},
Expand Down Expand Up @@ -100,7 +100,7 @@ func TestAccAlicloudRamPoliciesDataSource_policy_type(t *testing.T) {

const testAccCheckAlicloudRamPoliciessDataSourceForGroupConfig = `
variable "name" {
default = "testAccCheckAlicloudRamPoliciessDataSourceForGroupConfig"
default = "tf-testAccCheckAlicloudRamPoliciessDataSourceForGroupConfig"
}
resource "alicloud_ram_policy" "policy" {
name = "${var.name}"
Expand Down Expand Up @@ -135,7 +135,7 @@ data "alicloud_ram_policies" "policy" {

const testAccCheckAlicloudRamPoliciessDataSourceForRoleConfig = `
variable "name" {
default = "testAccCheckAlicloudRamPoliciessDataSourceForRoleConfig"
default = "tf-testAccCheckAlicloudRamPoliciessDataSourceForRoleConfig"
}
resource "alicloud_ram_policy" "policy" {
name = "${var.name}"
Expand Down Expand Up @@ -172,7 +172,7 @@ data "alicloud_ram_policies" "policy" {

const testAccCheckAlicloudRamPoliciessDataSourceForUserConfig = `
variable "name" {
default = "testAccCheckAlicloudRamPoliciessDataSourceForUserConfig"
default = "tf-testAccCheckAlicloudRamPoliciessDataSourceForUserConfig"
}
resource "alicloud_ram_policy" "policy" {
name = "${var.name}"
Expand Down Expand Up @@ -210,7 +210,7 @@ data "alicloud_ram_policies" "policy" {

const testAccCheckAlicloudRamPoliciessDataSourcePolicyNameRegexConfig = `
resource "alicloud_ram_policy" "policy" {
name = "testAccCheckAlicloudRamPoliciessDataSourcePolicyNameRegexConfig"
name = "tf-testAccCheckAlicloudRamPoliciessDataSourcePolicyNameRegexConfig"
statement = [
{
effect = "Deny"
Expand All @@ -228,7 +228,7 @@ data "alicloud_ram_policies" "policy" {

const testAccCheckAlicloudRamPoliciessDataSourcePolicyTypeConfig = `
resource "alicloud_ram_policy" "policy" {
name = "testAccCheckAlicloudRamPoliciessDataSourcePolicyNameRegexConfig"
name = "tf-testAccCheckAlicloudRamPoliciessDataSourcePolicyNameRegexConfig"
statement = [
{
effect = "Deny"
Expand Down
6 changes: 3 additions & 3 deletions alicloud/data_source_alicloud_ram_roles_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ func TestAccAlicloudRamRolesDataSource_for_policy(t *testing.T) {
Check: resource.ComposeTestCheckFunc(
testAccCheckAlicloudDataSourceID("data.alicloud_ram_roles.role"),
resource.TestCheckResourceAttr("data.alicloud_ram_roles.role", "roles.#", "1"),
resource.TestCheckResourceAttr("data.alicloud_ram_roles.role", "roles.0.name", "testAccCheckAlicloudRamRolesDataSourceForPolicyConfig"),
resource.TestCheckResourceAttr("data.alicloud_ram_roles.role", "roles.0.name", "tf-testAccCheckAlicloudRamRolesDataSourceForPolicyConfig"),
),
},
},
Expand Down Expand Up @@ -62,7 +62,7 @@ func TestAccAlicloudRamRolesDataSource_role_name_regex(t *testing.T) {

const testAccCheckAlicloudRamRolesDataSourceForPolicyConfig = `
variable "name" {
default = "testAccCheckAlicloudRamRolesDataSourceForPolicyConfig"
default = "tf-testAccCheckAlicloudRamRolesDataSourceForPolicyConfig"
}
resource "alicloud_ram_policy" "policy" {
name = "${var.name}"
Expand Down Expand Up @@ -104,7 +104,7 @@ data "alicloud_ram_roles" "role" {

const testAccCheckAlicloudRamRolesDataSourceRoleNameRegexConfig = `
resource "alicloud_ram_role" "role" {
name = "testAccCheckAlicloudRamRolesDataSourceRoleNameRegexConfig"
name = "tf-testAccCheckAlicloudRamRolesDataSourceRoleNameRegexConfig"
services = ["apigateway.aliyuncs.com", "ecs.aliyuncs.com"]
description = "this is a test"
force = true
Expand Down
10 changes: 5 additions & 5 deletions alicloud/data_source_alicloud_ram_users_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ func TestAccAlicloudRamUsersDataSource_for_group(t *testing.T) {
Check: resource.ComposeTestCheckFunc(
testAccCheckAlicloudDataSourceID("data.alicloud_ram_users.user"),
resource.TestCheckResourceAttr("data.alicloud_ram_users.user", "users.#", "1"),
resource.TestCheckResourceAttr("data.alicloud_ram_users.user", "users.0.name", "testAccCheckAlicloudRamUsersDataSourceForGroupConfig"),
resource.TestCheckResourceAttr("data.alicloud_ram_users.user", "users.0.name", "tf-testAccCheckAlicloudRamUsersDataSourceForGroupConfig"),
),
},
},
Expand All @@ -37,7 +37,7 @@ func TestAccAlicloudRamUsersDataSource_for_policy(t *testing.T) {
Check: resource.ComposeTestCheckFunc(
testAccCheckAlicloudDataSourceID("data.alicloud_ram_users.user"),
resource.TestCheckResourceAttr("data.alicloud_ram_users.user", "users.#", "1"),
resource.TestCheckResourceAttr("data.alicloud_ram_users.user", "users.0.name", "testAccCheckAlicloudRamUsersDataSourceForPolicyConfig"),
resource.TestCheckResourceAttr("data.alicloud_ram_users.user", "users.0.name", "tf-testAccCheckAlicloudRamUsersDataSourceForPolicyConfig"),
),
},
},
Expand Down Expand Up @@ -81,7 +81,7 @@ func TestAccAlicloudRamUsersDataSource_user_name_regex(t *testing.T) {

const testAccCheckAlicloudRamUsersDataSourceForGroupConfig = `
variable "name" {
default = "testAccCheckAlicloudRamUsersDataSourceForGroupConfig"
default = "tf-testAccCheckAlicloudRamUsersDataSourceForGroupConfig"
}
resource "alicloud_ram_user" "user" {
name = "${var.name}"
Expand All @@ -107,7 +107,7 @@ data "alicloud_ram_users" "user" {

const testAccCheckAlicloudRamUsersDataSourceForPolicyConfig = `
variable "name" {
default = "testAccCheckAlicloudRamUsersDataSourceForPolicyConfig"
default = "tf-testAccCheckAlicloudRamUsersDataSourceForPolicyConfig"
}
resource "alicloud_ram_policy" "policy" {
name = "${var.name}"
Expand Down Expand Up @@ -150,7 +150,7 @@ data "alicloud_ram_users" "user" {

const testAccCheckAlicloudRamGroupsDataSourceUserNameRegexConfig = `
resource "alicloud_ram_user" "user" {
name = "testAccCheckAlicloudRamGroupsDataSourceUserNameRegexConfig"
name = "tf-testAccCheckAlicloudRamGroupsDataSourceUserNameRegexConfig"
display_name = "displayname"
mobile = "86-18888888888"
email = "[email protected]"
Expand Down
Loading

0 comments on commit 35f6683

Please sign in to comment.