github.com/vtorhonen/terraform@v0.9.0-beta2.0.20170307220345-5d894e4ffda7/builtin/providers/alicloud/data_source_alicloud_zones_test.go (about) 1 package alicloud 2 3 import ( 4 "github.com/hashicorp/terraform/helper/resource" 5 "testing" 6 ) 7 8 func TestAccAlicloudZonesDataSource_basic(t *testing.T) { 9 resource.Test(t, resource.TestCase{ 10 PreCheck: func() { 11 testAccPreCheck(t) 12 }, 13 Providers: testAccProviders, 14 Steps: []resource.TestStep{ 15 { 16 Config: testAccCheckAlicloudZonesDataSourceBasicConfig, 17 Check: resource.ComposeTestCheckFunc( 18 testAccCheckAlicloudDataSourceID("data.alicloud_zones.foo"), 19 ), 20 }, 21 }, 22 }) 23 } 24 25 func TestAccAlicloudZonesDataSource_filter(t *testing.T) { 26 resource.Test(t, resource.TestCase{ 27 PreCheck: func() { 28 testAccPreCheck(t) 29 }, 30 Providers: testAccProviders, 31 Steps: []resource.TestStep{ 32 { 33 Config: testAccCheckAlicloudZonesDataSourceFilter, 34 Check: resource.ComposeTestCheckFunc( 35 testAccCheckAlicloudDataSourceID("data.alicloud_zones.foo"), 36 resource.TestCheckResourceAttr("data.alicloud_zones.foo", "zones.#", "2"), 37 ), 38 }, 39 40 resource.TestStep{ 41 Config: testAccCheckAlicloudZonesDataSourceFilterIoOptimized, 42 Check: resource.ComposeTestCheckFunc( 43 testAccCheckAlicloudDataSourceID("data.alicloud_zones.foo"), 44 resource.TestCheckResourceAttr("data.alicloud_zones.foo", "zones.#", "1"), 45 ), 46 }, 47 }, 48 }) 49 } 50 51 const testAccCheckAlicloudZonesDataSourceBasicConfig = ` 52 data "alicloud_zones" "foo" { 53 } 54 ` 55 56 const testAccCheckAlicloudZonesDataSourceFilter = ` 57 data "alicloud_zones" "foo" { 58 "available_instance_type"= "ecs.c2.xlarge" 59 "available_resource_creation"= "VSwitch" 60 "available_disk_category"= "cloud_efficiency" 61 } 62 ` 63 64 const testAccCheckAlicloudZonesDataSourceFilterIoOptimized = ` 65 data "alicloud_zones" "foo" { 66 "available_instance_type"= "ecs.c2.xlarge" 67 "available_resource_creation"= "IoOptimized" 68 "available_disk_category"= "cloud" 69 } 70 `