diff --git a/builtin/providers/aws/resource_aws_elb_test.go b/builtin/providers/aws/resource_aws_elb_test.go index e30707666..941b2fdef 100644 --- a/builtin/providers/aws/resource_aws_elb_test.go +++ b/builtin/providers/aws/resource_aws_elb_test.go @@ -4,6 +4,7 @@ import ( "fmt" "os" "reflect" + "regexp" "sort" "testing" @@ -74,6 +75,27 @@ func TestAccAWSELB_fullCharacterRange(t *testing.T) { }) } +func TestAccAWSELB_generatedName(t *testing.T) { + var conf elb.LoadBalancerDescription + generatedNameRegexp := regexp.MustCompile("^tf-lb-") + + resource.Test(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + Providers: testAccProviders, + CheckDestroy: testAccCheckAWSELBDestroy, + Steps: []resource.TestStep{ + resource.TestStep{ + Config: testAccAWSELBGeneratedName, + Check: resource.ComposeTestCheckFunc( + testAccCheckAWSELBExists("aws_elb.foo", &conf), + resource.TestMatchResourceAttr( + "aws_elb.foo", "name", generatedNameRegexp), + ), + }, + }, + }) +} + func TestAccAWSELB_tags(t *testing.T) { var conf elb.LoadBalancerDescription var td elb.TagDescription @@ -592,6 +614,19 @@ resource "aws_elb" "foo" { } ` +const testAccAWSELBGeneratedName = ` +resource "aws_elb" "foo" { + availability_zones = ["us-west-2a", "us-west-2b", "us-west-2c"] + + listener { + instance_port = 8000 + instance_protocol = "http" + lb_port = 80 + lb_protocol = "http" + } +} +` + const testAccAWSELBConfig_TagUpdate = ` resource "aws_elb" "bar" { name = "foobar-terraform-test"