func TestAccAzureRMDnsAAAARecord_updateRecords(t *testing.T) { ri := acctest.RandInt() preConfig := fmt.Sprintf(testAccAzureRMDnsAAAARecord_basic, ri, ri, ri) postConfig := fmt.Sprintf(testAccAzureRMDnsAAAARecord_updateRecords, ri, ri, ri) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMDnsAAAARecordDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: preConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMDnsAAAARecordExists("azurerm_dns_aaaa_record.test"), resource.TestCheckResourceAttr( "azurerm_dns_aaaa_record.test", "records.#", "2"), ), }, resource.TestStep{ Config: postConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMDnsAAAARecordExists("azurerm_dns_aaaa_record.test"), resource.TestCheckResourceAttr( "azurerm_dns_aaaa_record.test", "records.#", "3"), ), }, }, }) }
func TestAccAWSASGNotification_update(t *testing.T) { var asgn autoscaling.DescribeNotificationConfigurationsOutput resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckASGNDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccASGNotificationConfig_basic, Check: resource.ComposeTestCheckFunc( testAccCheckASGNotificationExists("aws_autoscaling_notification.example", []string{"foobar1-terraform-test"}, &asgn), testAccCheckAWSASGNotificationAttributes("aws_autoscaling_notification.example", &asgn), ), }, resource.TestStep{ Config: testAccASGNotificationConfig_update, Check: resource.ComposeTestCheckFunc( testAccCheckASGNotificationExists("aws_autoscaling_notification.example", []string{"foobar1-terraform-test", "barfoo-terraform-test"}, &asgn), testAccCheckAWSASGNotificationAttributes("aws_autoscaling_notification.example", &asgn), ), }, }, }) }
func TestAccAWSElasticacheSubnetGroup_update(t *testing.T) { var csg elasticache.CacheSubnetGroup rn := "aws_elasticache_subnet_group.bar" ri := genRandInt() preConfig := fmt.Sprintf(testAccAWSElasticacheSubnetGroupUpdateConfigPre, ri) postConfig := fmt.Sprintf(testAccAWSElasticacheSubnetGroupUpdateConfigPost, ri) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckAWSElasticacheSubnetGroupDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: preConfig, Check: resource.ComposeTestCheckFunc( testAccCheckAWSElasticacheSubnetGroupExists(rn, &csg), testAccCheckAWSElastiCacheSubnetGroupAttrs(&csg, rn, 1), ), }, resource.TestStep{ Config: postConfig, Check: resource.ComposeTestCheckFunc( testAccCheckAWSElasticacheSubnetGroupExists(rn, &csg), testAccCheckAWSElastiCacheSubnetGroupAttrs(&csg, rn, 2), ), }, }, }) }
func TestAccAWSVpcEndpoint_withRouteTableAndPolicy(t *testing.T) { var endpoint ec2.VpcEndpoint var routeTable ec2.RouteTable resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, IDRefreshName: "aws_vpc_endpoint.second-private-s3", Providers: testAccProviders, CheckDestroy: testAccCheckVpcEndpointDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccVpcEndpointWithRouteTableAndPolicyConfig, Check: resource.ComposeTestCheckFunc( testAccCheckVpcEndpointExists("aws_vpc_endpoint.second-private-s3", &endpoint), testAccCheckRouteTableExists("aws_route_table.default", &routeTable), ), }, resource.TestStep{ Config: testAccVpcEndpointWithRouteTableAndPolicyConfigModified, Check: resource.ComposeTestCheckFunc( testAccCheckVpcEndpointExists("aws_vpc_endpoint.second-private-s3", &endpoint), testAccCheckRouteTableExists("aws_route_table.default", &routeTable), ), }, }, }) }
func TestAccLBV2Monitor_basic(t *testing.T) { var monitor monitors.Monitor resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckLBV2MonitorDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: TestAccLBV2MonitorConfig_basic, Check: resource.ComposeTestCheckFunc( testAccCheckLBV2MonitorExists(t, "openstack_lb_monitor_v2.monitor_1", &monitor), ), }, resource.TestStep{ Config: TestAccLBV2MonitorConfig_update, Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttr("openstack_lb_monitor_v2.monitor_1", "name", "tf_test_monitor_updated"), resource.TestCheckResourceAttr("openstack_lb_monitor_v2.monitor_1", "delay", "30"), resource.TestCheckResourceAttr("openstack_lb_monitor_v2.monitor_1", "timeout", "15"), ), }, }, }) }
func TestAccAWSVpnGateway_delete(t *testing.T) { var vpnGateway ec2.VPNGateway testDeleted := func(r string) resource.TestCheckFunc { return func(s *terraform.State) error { _, ok := s.RootModule().Resources[r] if ok { return fmt.Errorf("VPN Gateway %q should have been deleted", r) } return nil } } resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckVpnGatewayDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccVpnGatewayConfig, Check: resource.ComposeTestCheckFunc( testAccCheckVpnGatewayExists("aws_vpn_gateway.foo", &vpnGateway)), }, resource.TestStep{ Config: testAccNoVpnGatewayConfig, Check: resource.ComposeTestCheckFunc(testDeleted("aws_vpn_gateway.foo")), }, }, }) }
func TestAccComputeInstance_update(t *testing.T) { var instance compute.Instance var instanceName = fmt.Sprintf("instance-test-%s", acctest.RandString(10)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckComputeInstanceDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccComputeInstance_basic(instanceName), Check: resource.ComposeTestCheckFunc( testAccCheckComputeInstanceExists( "google_compute_instance.foobar", &instance), ), }, resource.TestStep{ Config: testAccComputeInstance_update(instanceName), Check: resource.ComposeTestCheckFunc( testAccCheckComputeInstanceExists( "google_compute_instance.foobar", &instance), testAccCheckComputeInstanceMetadata( &instance, "bar", "baz"), testAccCheckComputeInstanceTag(&instance, "baz"), testAccCheckComputeInstanceAccessConfig(&instance), ), }, }, }) }
func TestAccAWSAutoScalingGroup_VpcUpdates(t *testing.T) { var group autoscaling.Group resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckAWSAutoScalingGroupDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccAWSAutoScalingGroupConfigWithAZ, Check: resource.ComposeTestCheckFunc( testAccCheckAWSAutoScalingGroupExists("aws_autoscaling_group.bar", &group), ), }, resource.TestStep{ Config: testAccAWSAutoScalingGroupConfigWithVPCIdent, Check: resource.ComposeTestCheckFunc( testAccCheckAWSAutoScalingGroupExists("aws_autoscaling_group.bar", &group), testAccCheckAWSAutoScalingGroupAttributesVPCZoneIdentifer(&group), ), }, }, }) }
func TestAccAWSAutoScalingGroup_tags(t *testing.T) { var group autoscaling.Group resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckAWSAutoScalingGroupDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccAWSAutoScalingGroupConfig, Check: resource.ComposeTestCheckFunc( testAccCheckAWSAutoScalingGroupExists("aws_autoscaling_group.bar", &group), testAccCheckAutoscalingTags(&group.Tags, "Foo", map[string]interface{}{ "value": "foo-bar", "propagate_at_launch": true, }), ), }, resource.TestStep{ Config: testAccAWSAutoScalingGroupConfigUpdate, Check: resource.ComposeTestCheckFunc( testAccCheckAWSAutoScalingGroupExists("aws_autoscaling_group.bar", &group), testAccCheckAutoscalingTagNotExists(&group.Tags, "Foo"), testAccCheckAutoscalingTags(&group.Tags, "Bar", map[string]interface{}{ "value": "bar-foo", "propagate_at_launch": true, }), ), }, }, }) }
func TestAccAWSS3Bucket_Policy(t *testing.T) { rInt := acctest.RandInt() resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckAWSS3BucketDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccAWSS3BucketConfigWithPolicy(rInt), Check: resource.ComposeTestCheckFunc( testAccCheckAWSS3BucketExists("aws_s3_bucket.bucket"), testAccCheckAWSS3BucketPolicy( "aws_s3_bucket.bucket", testAccAWSS3BucketPolicy(rInt)), ), }, resource.TestStep{ Config: testAccAWSS3BucketConfig(rInt), Check: resource.ComposeTestCheckFunc( testAccCheckAWSS3BucketExists("aws_s3_bucket.bucket"), testAccCheckAWSS3BucketPolicy( "aws_s3_bucket.bucket", ""), ), }, resource.TestStep{ Config: testAccAWSS3BucketConfigWithEmptyPolicy(rInt), Check: resource.ComposeTestCheckFunc( testAccCheckAWSS3BucketExists("aws_s3_bucket.bucket"), testAccCheckAWSS3BucketPolicy( "aws_s3_bucket.bucket", ""), ), }, }, }) }
func TestAccAzureRMDnsCNameRecord_withTags(t *testing.T) { ri := acctest.RandInt() preConfig := fmt.Sprintf(testAccAzureRMDnsCNameRecord_withTags, ri, ri, ri) postConfig := fmt.Sprintf(testAccAzureRMDnsCNameRecord_withTagsUpdate, ri, ri, ri) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMDnsCNameRecordDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: preConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMDnsCNameRecordExists("azurerm_dns_cname_record.test"), resource.TestCheckResourceAttr( "azurerm_dns_cname_record.test", "tags.#", "2"), ), }, resource.TestStep{ Config: postConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMDnsCNameRecordExists("azurerm_dns_cname_record.test"), resource.TestCheckResourceAttr( "azurerm_dns_cname_record.test", "tags.#", "1"), ), }, }, }) }
func TestAccAWSS3Bucket_acceleration(t *testing.T) { rInt := acctest.RandInt() resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckAWSS3BucketDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccAWSS3BucketConfigWithAcceleration(rInt), Check: resource.ComposeTestCheckFunc( testAccCheckAWSS3BucketExists("aws_s3_bucket.bucket"), resource.TestCheckResourceAttr( "aws_s3_bucket.bucket", "acceleration_status", "Enabled"), ), }, resource.TestStep{ Config: testAccAWSS3BucketConfigWithoutAcceleration(rInt), Check: resource.ComposeTestCheckFunc( testAccCheckAWSS3BucketExists("aws_s3_bucket.bucket"), resource.TestCheckResourceAttr( "aws_s3_bucket.bucket", "acceleration_status", "Suspended"), ), }, }, }) }
func TestAccAWSS3Bucket_Versioning(t *testing.T) { rInt := acctest.RandInt() resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckAWSS3BucketDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccAWSS3BucketConfig(rInt), Check: resource.ComposeTestCheckFunc( testAccCheckAWSS3BucketExists("aws_s3_bucket.bucket"), testAccCheckAWSS3BucketVersioning( "aws_s3_bucket.bucket", ""), ), }, resource.TestStep{ Config: testAccAWSS3BucketConfigWithVersioning(rInt), Check: resource.ComposeTestCheckFunc( testAccCheckAWSS3BucketExists("aws_s3_bucket.bucket"), testAccCheckAWSS3BucketVersioning( "aws_s3_bucket.bucket", s3.BucketVersioningStatusEnabled), ), }, resource.TestStep{ Config: testAccAWSS3BucketConfigWithDisableVersioning(rInt), Check: resource.ComposeTestCheckFunc( testAccCheckAWSS3BucketExists("aws_s3_bucket.bucket"), testAccCheckAWSS3BucketVersioning( "aws_s3_bucket.bucket", s3.BucketVersioningStatusSuspended), ), }, }, }) }
func TestAccAWSS3Bucket_UpdateAcl(t *testing.T) { ri := acctest.RandInt() preConfig := fmt.Sprintf(testAccAWSS3BucketConfigWithAcl, ri) postConfig := fmt.Sprintf(testAccAWSS3BucketConfigWithAclUpdate, ri) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckAWSS3BucketDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: preConfig, Check: resource.ComposeTestCheckFunc( testAccCheckAWSS3BucketExists("aws_s3_bucket.bucket"), resource.TestCheckResourceAttr( "aws_s3_bucket.bucket", "acl", "public-read"), ), }, resource.TestStep{ Config: postConfig, Check: resource.ComposeTestCheckFunc( testAccCheckAWSS3BucketExists("aws_s3_bucket.bucket"), resource.TestCheckResourceAttr( "aws_s3_bucket.bucket", "acl", "private"), ), }, }, }) }
func TestAccDigitalOceanDroplet_Update(t *testing.T) { var droplet godo.Droplet resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckDigitalOceanDropletDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccCheckDigitalOceanDropletConfig_basic, Check: resource.ComposeTestCheckFunc( testAccCheckDigitalOceanDropletExists("digitalocean_droplet.foobar", &droplet), testAccCheckDigitalOceanDropletAttributes(&droplet), ), }, resource.TestStep{ Config: testAccCheckDigitalOceanDropletConfig_RenameAndResize, Check: resource.ComposeTestCheckFunc( testAccCheckDigitalOceanDropletExists("digitalocean_droplet.foobar", &droplet), testAccCheckDigitalOceanDropletRenamedAndResized(&droplet), resource.TestCheckResourceAttr( "digitalocean_droplet.foobar", "name", "baz"), resource.TestCheckResourceAttr( "digitalocean_droplet.foobar", "size", "1gb"), resource.TestCheckResourceAttr( "digitalocean_droplet.foobar", "disk", "30"), ), }, }, }) }
// GH-198 func TestAccHerokuAddon_noPlan(t *testing.T) { var addon heroku.Addon appName := fmt.Sprintf("tftest-%s", acctest.RandString(10)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckHerokuAddonDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccCheckHerokuAddonConfig_no_plan(appName), Check: resource.ComposeTestCheckFunc( testAccCheckHerokuAddonExists("heroku_addon.foobar", &addon), testAccCheckHerokuAddonAttributes(&addon, "memcachier:dev"), resource.TestCheckResourceAttr( "heroku_addon.foobar", "app", appName), resource.TestCheckResourceAttr( "heroku_addon.foobar", "plan", "memcachier"), ), }, resource.TestStep{ Config: testAccCheckHerokuAddonConfig_no_plan(appName), Check: resource.ComposeTestCheckFunc( testAccCheckHerokuAddonExists("heroku_addon.foobar", &addon), testAccCheckHerokuAddonAttributes(&addon, "memcachier:dev"), resource.TestCheckResourceAttr( "heroku_addon.foobar", "app", appName), resource.TestCheckResourceAttr( "heroku_addon.foobar", "plan", "memcachier"), ), }, }, }) }
func TestAccDigitalOceanDroplet_ResizeWithOutDisk(t *testing.T) { var droplet godo.Droplet resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckDigitalOceanDropletDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccCheckDigitalOceanDropletConfig_basic, Check: resource.ComposeTestCheckFunc( testAccCheckDigitalOceanDropletExists("digitalocean_droplet.foobar", &droplet), testAccCheckDigitalOceanDropletAttributes(&droplet), ), }, resource.TestStep{ Config: testAccCheckDigitalOceanDropletConfig_resize_without_disk, Check: resource.ComposeTestCheckFunc( testAccCheckDigitalOceanDropletExists("digitalocean_droplet.foobar", &droplet), testAccCheckDigitalOceanDropletResizeWithOutDisk(&droplet), resource.TestCheckResourceAttr( "digitalocean_droplet.foobar", "size", "1gb"), resource.TestCheckResourceAttr( "digitalocean_droplet.foobar", "disk", "20"), ), }, }, }) }
func TestAccComputeInstance_update(t *testing.T) { var instance compute.Instance resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckComputeInstanceDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccComputeInstance_basic, Check: resource.ComposeTestCheckFunc( testAccCheckComputeInstanceExists( "google_compute_instance.foobar", &instance), ), }, resource.TestStep{ Config: testAccComputeInstance_update, Check: resource.ComposeTestCheckFunc( testAccCheckComputeInstanceExists( "google_compute_instance.foobar", &instance), testAccCheckComputeInstanceMetadata( &instance, "bar", "baz"), testAccCheckComputeInstanceTag(&instance, "baz"), ), }, }, }) }
func TestAccVpnGateway_tags(t *testing.T) { var v ec2.VPNGateway resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckVpnGatewayDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccCheckVpnGatewayConfigTags, Check: resource.ComposeTestCheckFunc( testAccCheckVpnGatewayExists("aws_vpn_gateway.foo", &v), testAccCheckTags(&v.Tags, "foo", "bar"), ), }, resource.TestStep{ Config: testAccCheckVpnGatewayConfigTagsUpdate, Check: resource.ComposeTestCheckFunc( testAccCheckVpnGatewayExists("aws_vpn_gateway.foo", &v), testAccCheckTags(&v.Tags, "foo", ""), testAccCheckTags(&v.Tags, "bar", "baz"), ), }, }, }) }
func TestAccAzureRMStorageAccount_blobEncryption(t *testing.T) { ri := acctest.RandInt() rs := acctest.RandString(4) preConfig := fmt.Sprintf(testAccAzureRMStorageAccount_blobEncryption, ri, rs) postConfig := fmt.Sprintf(testAccAzureRMStorageAccount_blobEncryptionDisabled, ri, rs) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMStorageAccountDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: preConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMStorageAccountExists("azurerm_storage_account.testsa"), resource.TestCheckResourceAttr("azurerm_storage_account.testsa", "enable_blob_encryption", "true"), ), }, resource.TestStep{ Config: postConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMStorageAccountExists("azurerm_storage_account.testsa"), resource.TestCheckResourceAttr("azurerm_storage_account.testsa", "enable_blob_encryption", "false"), ), }, }, }) }
func TestAccAzureRMSqlFirewallRule_basic(t *testing.T) { ri := acctest.RandInt() preConfig := fmt.Sprintf(testAccAzureRMSqlFirewallRule_basic, ri, ri, ri) postConfig := fmt.Sprintf(testAccAzureRMSqlFirewallRule_withUpdates, ri, ri, ri) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMSqlFirewallRuleDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: preConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMSqlFirewallRuleExists("azurerm_sql_firewall_rule.test"), resource.TestCheckResourceAttr("azurerm_sql_firewall_rule.test", "start_ip_address", "0.0.0.0"), resource.TestCheckResourceAttr("azurerm_sql_firewall_rule.test", "end_ip_address", "255.255.255.255"), ), }, resource.TestStep{ Config: postConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMSqlFirewallRuleExists("azurerm_sql_firewall_rule.test"), resource.TestCheckResourceAttr("azurerm_sql_firewall_rule.test", "start_ip_address", "10.0.17.62"), resource.TestCheckResourceAttr("azurerm_sql_firewall_rule.test", "end_ip_address", "10.0.17.62"), ), }, }, }) }
func TestAccAzureRMStorageAccount_blobStorageWithUpdate(t *testing.T) { ri := acctest.RandInt() rs := acctest.RandString(4) preConfig := fmt.Sprintf(testAccAzureRMStorageAccount_blobStorage, ri, rs) postConfig := fmt.Sprintf(testAccAzureRMStorageAccount_blobStorageUpdate, ri, rs) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMStorageAccountDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: preConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMStorageAccountExists("azurerm_storage_account.testsa"), resource.TestCheckResourceAttr("azurerm_storage_account.testsa", "account_kind", "BlobStorage"), resource.TestCheckResourceAttr("azurerm_storage_account.testsa", "access_tier", "Hot"), ), }, resource.TestStep{ Config: postConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMStorageAccountExists("azurerm_storage_account.testsa"), resource.TestCheckResourceAttr("azurerm_storage_account.testsa", "access_tier", "Cool"), ), }, }, }) }
func TestAccComputeBackendService_basic(t *testing.T) { serviceName := fmt.Sprintf("tf-test-%s", acctest.RandString(10)) checkName := fmt.Sprintf("tf-test-%s", acctest.RandString(10)) extraCheckName := fmt.Sprintf("tf-test-%s", acctest.RandString(10)) var svc compute.BackendService resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckComputeBackendServiceDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccComputeBackendService_basic(serviceName, checkName), Check: resource.ComposeTestCheckFunc( testAccCheckComputeBackendServiceExists( "google_compute_backend_service.foobar", &svc), ), }, resource.TestStep{ Config: testAccComputeBackendService_basicModified( serviceName, checkName, extraCheckName), Check: resource.ComposeTestCheckFunc( testAccCheckComputeBackendServiceExists( "google_compute_backend_service.foobar", &svc), ), }, }, }) }
func TestAccAzureRMStorageAccount_basic(t *testing.T) { ri := acctest.RandInt() rs := acctest.RandString(4) preConfig := fmt.Sprintf(testAccAzureRMStorageAccount_basic, ri, rs) postConfig := fmt.Sprintf(testAccAzureRMStorageAccount_update, ri, rs) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMStorageAccountDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: preConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMStorageAccountExists("azurerm_storage_account.testsa"), resource.TestCheckResourceAttr("azurerm_storage_account.testsa", "account_type", "Standard_LRS"), resource.TestCheckResourceAttr("azurerm_storage_account.testsa", "tags.%", "1"), resource.TestCheckResourceAttr("azurerm_storage_account.testsa", "tags.environment", "production"), ), }, resource.TestStep{ Config: postConfig, Check: resource.ComposeTestCheckFunc( testCheckAzureRMStorageAccountExists("azurerm_storage_account.testsa"), resource.TestCheckResourceAttr("azurerm_storage_account.testsa", "account_type", "Standard_GRS"), resource.TestCheckResourceAttr("azurerm_storage_account.testsa", "tags.%", "1"), resource.TestCheckResourceAttr("azurerm_storage_account.testsa", "tags.environment", "staging"), ), }, }, }) }
func TestAccAWSENI_updatedDescription(t *testing.T) { var conf ec2.NetworkInterface resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, IDRefreshName: "aws_network_interface.bar", Providers: testAccProviders, CheckDestroy: testAccCheckAWSENIDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccAWSENIConfig, Check: resource.ComposeTestCheckFunc( testAccCheckAWSENIExists("aws_network_interface.bar", &conf), resource.TestCheckResourceAttr( "aws_network_interface.bar", "description", "Managed by Terraform"), ), }, resource.TestStep{ Config: testAccAWSENIConfigUpdatedDescription, Check: resource.ComposeTestCheckFunc( testAccCheckAWSENIExists("aws_network_interface.bar", &conf), resource.TestCheckResourceAttr( "aws_network_interface.bar", "description", "Updated ENI Description"), ), }, }, }) }
func TestAccDigitalOceanDroplet_UpdateUserData(t *testing.T) { var afterCreate, afterUpdate godo.Droplet resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckDigitalOceanDropletDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccCheckDigitalOceanDropletConfig_basic, Check: resource.ComposeTestCheckFunc( testAccCheckDigitalOceanDropletExists("digitalocean_droplet.foobar", &afterCreate), testAccCheckDigitalOceanDropletAttributes(&afterCreate), ), }, resource.TestStep{ Config: testAccCheckDigitalOceanDropletConfig_userdata_update, Check: resource.ComposeTestCheckFunc( testAccCheckDigitalOceanDropletExists("digitalocean_droplet.foobar", &afterUpdate), resource.TestCheckResourceAttr( "digitalocean_droplet.foobar", "user_data", "foobar foobar"), testAccCheckDigitalOceanDropletRecreated( t, &afterCreate, &afterUpdate), ), }, }, }) }
func TestAccAzureRMRouteTable_multipleRoutes(t *testing.T) { resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMRouteTableDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccAzureRMRouteTable_basic, Check: resource.ComposeTestCheckFunc( testCheckAzureRMRouteTableExists("azurerm_route_table.test"), resource.TestCheckResourceAttr( "azurerm_route_table.test", "route.#", "1"), ), }, resource.TestStep{ Config: testAccAzureRMRouteTable_multipleRoutes, Check: resource.ComposeTestCheckFunc( testCheckAzureRMRouteTableExists("azurerm_route_table.test"), resource.TestCheckResourceAttr( "azurerm_route_table.test", "route.#", "2"), ), }, }, }) }
func TestAccDigitalOceanDroplet_UpdateTags(t *testing.T) { var afterCreate, afterUpdate godo.Droplet resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckDigitalOceanDropletDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccCheckDigitalOceanDropletConfig_basic, Check: resource.ComposeTestCheckFunc( testAccCheckDigitalOceanDropletExists("digitalocean_droplet.foobar", &afterCreate), testAccCheckDigitalOceanDropletAttributes(&afterCreate), ), }, resource.TestStep{ Config: testAccCheckDigitalOceanDropletConfig_tag_update, Check: resource.ComposeTestCheckFunc( testAccCheckDigitalOceanDropletExists("digitalocean_droplet.foobar", &afterUpdate), resource.TestCheckResourceAttr( "digitalocean_droplet.foobar", "tags.#", "1"), resource.TestCheckResourceAttr( "digitalocean_droplet.foobar", "tags.0", "barbaz"), ), }, }, }) }
func TestAccAWSEIP_instance(t *testing.T) { var conf ec2.Address resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckAWSEIPDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccAWSEIPInstanceConfig, Check: resource.ComposeTestCheckFunc( testAccCheckAWSEIPExists("aws_eip.bar", &conf), testAccCheckAWSEIPAttributes(&conf), ), }, resource.TestStep{ Config: testAccAWSEIPInstanceConfig2, Check: resource.ComposeTestCheckFunc( testAccCheckAWSEIPExists("aws_eip.bar", &conf), testAccCheckAWSEIPAttributes(&conf), ), }, }, }) }
func TestAccAzureRMNetworkSecurityGroup_addingExtraRules(t *testing.T) { resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMNetworkSecurityGroupDestroy, Steps: []resource.TestStep{ { Config: testAccAzureRMNetworkSecurityGroup_basic, Check: resource.ComposeTestCheckFunc( testCheckAzureRMNetworkSecurityGroupExists("azurerm_network_security_group.test"), resource.TestCheckResourceAttr( "azurerm_network_security_group.test", "security_rule.#", "1"), ), }, { Config: testAccAzureRMNetworkSecurityGroup_anotherRule, Check: resource.ComposeTestCheckFunc( testCheckAzureRMNetworkSecurityGroupExists("azurerm_network_security_group.test"), resource.TestCheckResourceAttr( "azurerm_network_security_group.test", "security_rule.#", "2"), ), }, }, }) }