github.com/jrperritt/terraform@v0.1.1-0.20170525065507-96f391dafc38/builtin/providers/ovh/data_source_ovh_publiccloud_regions_test.go (about) 1 package ovh 2 3 import ( 4 "fmt" 5 "os" 6 "testing" 7 8 "github.com/hashicorp/terraform/helper/resource" 9 "github.com/hashicorp/terraform/terraform" 10 ) 11 12 func TestAccPublicCloudRegionsDataSource_basic(t *testing.T) { 13 resource.Test(t, resource.TestCase{ 14 PreCheck: func() { testAccPreCheck(t) }, 15 Providers: testAccProviders, 16 Steps: []resource.TestStep{ 17 resource.TestStep{ 18 Config: testAccPublicCloudRegionsDatasourceConfig, 19 Check: resource.ComposeTestCheckFunc( 20 testAccPublicCloudRegionsDatasource("data.ovh_publiccloud_regions.regions"), 21 ), 22 }, 23 }, 24 }) 25 } 26 27 func testAccPublicCloudRegionsDatasource(n string) resource.TestCheckFunc { 28 return func(s *terraform.State) error { 29 rs, ok := s.RootModule().Resources[n] 30 31 if !ok { 32 return fmt.Errorf("Can't find regions data source: %s", n) 33 } 34 35 if rs.Primary.ID == "" { 36 return fmt.Errorf("Cannot find regions for project %s", rs.Primary.Attributes["project_id"]) 37 } 38 39 return nil 40 } 41 } 42 43 var testAccPublicCloudRegionsDatasourceConfig = fmt.Sprintf(` 44 data "ovh_publiccloud_regions" "regions" { 45 project_id = "%s" 46 } 47 `, os.Getenv("OVH_PUBLIC_CLOUD"))