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  `