func TestAccDataSourceAWSALBListener_https(t *testing.T) { albName := fmt.Sprintf("testlistener-https-%s", acctest.RandStringFromCharSet(13, acctest.CharSetAlphaNum)) targetGroupName := fmt.Sprintf("testtargetgroup-%s", acctest.RandStringFromCharSet(10, acctest.CharSetAlphaNum)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, Steps: []resource.TestStep{ { Config: testAccDataSourceAWSALBListenerConfigHTTPS(albName, targetGroupName), Check: resource.ComposeAggregateTestCheckFunc( resource.TestCheckResourceAttrSet("data.aws_alb_listener.front_end", "load_balancer_arn"), resource.TestCheckResourceAttrSet("data.aws_alb_listener.front_end", "arn"), resource.TestCheckResourceAttr("data.aws_alb_listener.front_end", "protocol", "HTTPS"), resource.TestCheckResourceAttr("data.aws_alb_listener.front_end", "port", "443"), resource.TestCheckResourceAttr("data.aws_alb_listener.front_end", "default_action.#", "1"), resource.TestCheckResourceAttr("data.aws_alb_listener.front_end", "default_action.0.type", "forward"), resource.TestCheckResourceAttrSet("data.aws_alb_listener.front_end", "default_action.0.target_group_arn"), resource.TestCheckResourceAttrSet("data.aws_alb_listener.front_end", "certificate_arn"), resource.TestCheckResourceAttr("data.aws_alb_listener.front_end", "ssl_policy", "ELBSecurityPolicy-2015-05"), ), }, }, }) }
func TestAccAWSALBListenerRule_basic(t *testing.T) { var conf elbv2.Rule albName := fmt.Sprintf("testrule-basic-%s", acctest.RandStringFromCharSet(13, acctest.CharSetAlphaNum)) targetGroupName := fmt.Sprintf("testtargetgroup-%s", acctest.RandStringFromCharSet(10, acctest.CharSetAlphaNum)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, IDRefreshName: "aws_alb_listener_rule.static", Providers: testAccProviders, CheckDestroy: testAccCheckAWSALBListenerRuleDestroy, Steps: []resource.TestStep{ { Config: testAccAWSALBListenerRuleConfig_basic(albName, targetGroupName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBListenerRuleExists("aws_alb_listener_rule.static", &conf), resource.TestCheckResourceAttrSet("aws_alb_listener_rule.static", "arn"), resource.TestCheckResourceAttr("aws_alb_listener_rule.static", "priority", "100"), resource.TestCheckResourceAttr("aws_alb_listener_rule.static", "action.#", "1"), resource.TestCheckResourceAttr("aws_alb_listener_rule.static", "action.0.type", "forward"), resource.TestCheckResourceAttrSet("aws_alb_listener_rule.static", "action.0.target_group_arn"), resource.TestCheckResourceAttr("aws_alb_listener_rule.static", "condition.#", "1"), resource.TestCheckResourceAttr("aws_alb_listener_rule.static", "condition.0.field", "path-pattern"), resource.TestCheckResourceAttr("aws_alb_listener_rule.static", "condition.0.values.#", "1"), resource.TestCheckResourceAttrSet("aws_alb_listener_rule.static", "condition.0.values.0"), ), }, }, }) }
func TestAccAWSALBListener_basic(t *testing.T) { var conf elbv2.Listener albName := fmt.Sprintf("testlistener-basic-%s", acctest.RandStringFromCharSet(13, acctest.CharSetAlphaNum)) targetGroupName := fmt.Sprintf("testtargetgroup-%s", acctest.RandStringFromCharSet(10, acctest.CharSetAlphaNum)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, IDRefreshName: "aws_alb_listener.front_end", Providers: testAccProviders, CheckDestroy: testAccCheckAWSALBListenerDestroy, Steps: []resource.TestStep{ { Config: testAccAWSALBListenerConfig_basic(albName, targetGroupName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBListenerExists("aws_alb_listener.front_end", &conf), resource.TestCheckResourceAttrSet("aws_alb_listener.front_end", "load_balancer_arn"), resource.TestCheckResourceAttrSet("aws_alb_listener.front_end", "arn"), resource.TestCheckResourceAttr("aws_alb_listener.front_end", "protocol", "HTTP"), resource.TestCheckResourceAttr("aws_alb_listener.front_end", "port", "80"), resource.TestCheckResourceAttr("aws_alb_listener.front_end", "default_action.#", "1"), resource.TestCheckResourceAttr("aws_alb_listener.front_end", "default_action.0.type", "forward"), resource.TestCheckResourceAttrSet("aws_alb_listener.front_end", "default_action.0.target_group_arn"), ), }, }, }) }
func TestAccAWSALBTargetGroup_changeNameForceNew(t *testing.T) { var before, after elbv2.TargetGroup targetGroupNameBefore := fmt.Sprintf("test-target-group-%s", acctest.RandStringFromCharSet(10, acctest.CharSetAlphaNum)) targetGroupNameAfter := fmt.Sprintf("test-target-group-%s", acctest.RandStringFromCharSet(4, acctest.CharSetAlphaNum)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, IDRefreshName: "aws_alb_target_group.test", Providers: testAccProviders, CheckDestroy: testAccCheckAWSALBTargetGroupDestroy, Steps: []resource.TestStep{ { Config: testAccAWSALBTargetGroupConfig_basic(targetGroupNameBefore), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBTargetGroupExists("aws_alb_target_group.test", &before), resource.TestCheckResourceAttr("aws_alb_target_group.test", "name", targetGroupNameBefore), ), }, { Config: testAccAWSALBTargetGroupConfig_basic(targetGroupNameAfter), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBTargetGroupExists("aws_alb_target_group.test", &after), resource.TestCheckResourceAttr("aws_alb_target_group.test", "name", targetGroupNameAfter), ), }, }, }) }
func TestAccAWSALB_accesslogs(t *testing.T) { var conf elbv2.LoadBalancer bucketName := fmt.Sprintf("testaccawsalbaccesslogs-%s", acctest.RandStringFromCharSet(6, acctest.CharSetAlphaNum)) albName := fmt.Sprintf("testaccawsalbaccesslog-%s", acctest.RandStringFromCharSet(4, acctest.CharSetAlpha)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, IDRefreshName: "aws_alb.alb_test", Providers: testAccProviders, CheckDestroy: testAccCheckAWSALBDestroy, Steps: []resource.TestStep{ { Config: testAccAWSALBConfig_basic(albName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBExists("aws_alb.alb_test", &conf), resource.TestCheckResourceAttr("aws_alb.alb_test", "name", albName), resource.TestCheckResourceAttr("aws_alb.alb_test", "internal", "false"), resource.TestCheckResourceAttr("aws_alb.alb_test", "subnets.#", "2"), resource.TestCheckResourceAttr("aws_alb.alb_test", "security_groups.#", "1"), resource.TestCheckResourceAttr("aws_alb.alb_test", "tags.%", "1"), resource.TestCheckResourceAttr("aws_alb.alb_test", "tags.TestName", "TestAccAWSALB_basic"), resource.TestCheckResourceAttr("aws_alb.alb_test", "enable_deletion_protection", "false"), resource.TestCheckResourceAttr("aws_alb.alb_test", "idle_timeout", "30"), resource.TestCheckResourceAttrSet("aws_alb.alb_test", "vpc_id"), resource.TestCheckResourceAttrSet("aws_alb.alb_test", "zone_id"), resource.TestCheckResourceAttrSet("aws_alb.alb_test", "dns_name"), resource.TestCheckResourceAttrSet("aws_alb.alb_test", "arn"), ), }, { Config: testAccAWSALBConfig_accessLogs(albName, bucketName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBExists("aws_alb.alb_test", &conf), resource.TestCheckResourceAttr("aws_alb.alb_test", "name", albName), resource.TestCheckResourceAttr("aws_alb.alb_test", "internal", "false"), resource.TestCheckResourceAttr("aws_alb.alb_test", "subnets.#", "2"), resource.TestCheckResourceAttr("aws_alb.alb_test", "security_groups.#", "1"), resource.TestCheckResourceAttr("aws_alb.alb_test", "tags.%", "1"), resource.TestCheckResourceAttr("aws_alb.alb_test", "tags.TestName", "TestAccAWSALB_basic"), resource.TestCheckResourceAttr("aws_alb.alb_test", "enable_deletion_protection", "false"), resource.TestCheckResourceAttr("aws_alb.alb_test", "idle_timeout", "50"), resource.TestCheckResourceAttrSet("aws_alb.alb_test", "vpc_id"), resource.TestCheckResourceAttrSet("aws_alb.alb_test", "zone_id"), resource.TestCheckResourceAttrSet("aws_alb.alb_test", "dns_name"), resource.TestCheckResourceAttr("aws_alb.alb_test", "access_logs.#", "1"), resource.TestCheckResourceAttr("aws_alb.alb_test", "access_logs.0.bucket", bucketName), resource.TestCheckResourceAttr("aws_alb.alb_test", "access_logs.0.prefix", "testAccAWSALBConfig_accessLogs"), resource.TestCheckResourceAttrSet("aws_alb.alb_test", "arn"), ), }, }, }) }
func TestAccAzureRMLoadBalancerRule_reapply(t *testing.T) { var lb network.LoadBalancer ri := acctest.RandInt() lbRuleName := fmt.Sprintf("LbRule-%s", acctest.RandStringFromCharSet(8, acctest.CharSetAlpha)) deleteRuleState := func(s *terraform.State) error { return s.Remove("azurerm_lb_rule.test") } resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMLoadBalancerDestroy, Steps: []resource.TestStep{ { Config: testAccAzureRMLoadBalancerRule_basic(ri, lbRuleName), Check: resource.ComposeTestCheckFunc( testCheckAzureRMLoadBalancerExists("azurerm_lb.test", &lb), testCheckAzureRMLoadBalancerRuleExists(lbRuleName, &lb), deleteRuleState, ), ExpectNonEmptyPlan: true, }, { Config: testAccAzureRMLoadBalancerRule_basic(ri, lbRuleName), Check: resource.ComposeTestCheckFunc( testCheckAzureRMLoadBalancerExists("azurerm_lb.test", &lb), testCheckAzureRMLoadBalancerRuleExists(lbRuleName, &lb), ), }, }, }) }
func TestAccAWSALB_tags(t *testing.T) { var conf elbv2.LoadBalancer albName := fmt.Sprintf("testaccawsalb-basic-%s", acctest.RandStringFromCharSet(10, acctest.CharSetAlphaNum)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, IDRefreshName: "aws_alb.alb_test", Providers: testAccProviders, CheckDestroy: testAccCheckAWSALBDestroy, Steps: []resource.TestStep{ { Config: testAccAWSALBConfig_basic(albName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBExists("aws_alb.alb_test", &conf), resource.TestCheckResourceAttr("aws_alb.alb_test", "tags.%", "1"), resource.TestCheckResourceAttr("aws_alb.alb_test", "tags.TestName", "TestAccAWSALB_basic"), ), }, { Config: testAccAWSALBConfig_updatedTags(albName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBExists("aws_alb.alb_test", &conf), resource.TestCheckResourceAttr("aws_alb.alb_test", "tags.%", "2"), resource.TestCheckResourceAttr("aws_alb.alb_test", "tags.Type", "Sample Type Tag"), resource.TestCheckResourceAttr("aws_alb.alb_test", "tags.Environment", "Production"), ), }, }, }) }
func TestAccAWSALBTargetGroup_tags(t *testing.T) { var conf elbv2.TargetGroup targetGroupName := fmt.Sprintf("test-target-group-%s", acctest.RandStringFromCharSet(10, acctest.CharSetAlphaNum)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, IDRefreshName: "aws_alb_target_group.test", Providers: testAccProviders, CheckDestroy: testAccCheckAWSALBTargetGroupDestroy, Steps: []resource.TestStep{ { Config: testAccAWSALBTargetGroupConfig_basic(targetGroupName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBTargetGroupExists("aws_alb_target_group.test", &conf), resource.TestCheckResourceAttr("aws_alb_target_group.test", "tags.%", "1"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "tags.TestName", "TestAccAWSALBTargetGroup_basic"), ), }, { Config: testAccAWSALBTargetGroupConfig_updateTags(targetGroupName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBTargetGroupExists("aws_alb_target_group.test", &conf), resource.TestCheckResourceAttr("aws_alb_target_group.test", "tags.%", "2"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "tags.Environment", "Production"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "tags.Type", "ALB Target Group"), ), }, }, }) }
func TestAccAzureRMLoadBalancerRule_removal(t *testing.T) { var lb network.LoadBalancer ri := acctest.RandInt() lbRuleName := fmt.Sprintf("LbRule-%s", acctest.RandStringFromCharSet(8, acctest.CharSetAlpha)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMLoadBalancerDestroy, Steps: []resource.TestStep{ { Config: testAccAzureRMLoadBalancerRule_basic(ri, lbRuleName), Check: resource.ComposeTestCheckFunc( testCheckAzureRMLoadBalancerExists("azurerm_lb.test", &lb), testCheckAzureRMLoadBalancerRuleExists(lbRuleName, &lb), ), }, { Config: testAccAzureRMLoadBalancerRule_removal(ri), Check: resource.ComposeTestCheckFunc( testCheckAzureRMLoadBalancerExists("azurerm_lb.test", &lb), testCheckAzureRMLoadBalancerRuleNotExists(lbRuleName, &lb), ), }, }, }) }
func TestAccAWSALB_updatedSecurityGroups(t *testing.T) { var pre, post elbv2.LoadBalancer albName := fmt.Sprintf("testaccawsalb-basic-%s", acctest.RandStringFromCharSet(10, acctest.CharSetAlphaNum)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, IDRefreshName: "aws_alb.alb_test", Providers: testAccProviders, CheckDestroy: testAccCheckAWSALBDestroy, Steps: []resource.TestStep{ { Config: testAccAWSALBConfig_basic(albName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBExists("aws_alb.alb_test", &pre), resource.TestCheckResourceAttr("aws_alb.alb_test", "security_groups.#", "1"), ), }, { Config: testAccAWSALBConfig_updateSecurityGroups(albName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBExists("aws_alb.alb_test", &post), resource.TestCheckResourceAttr("aws_alb.alb_test", "security_groups.#", "2"), testAccCheckAWSAlbARNs(&pre, &post), ), }, }, }) }
func TestAccAzureRMLoadBalancerRule_basic(t *testing.T) { var lb network.LoadBalancer ri := acctest.RandInt() lbRuleName := fmt.Sprintf("LbRule-%s", acctest.RandStringFromCharSet(8, acctest.CharSetAlpha)) subscriptionID := os.Getenv("ARM_SUBSCRIPTION_ID") lbRule_id := fmt.Sprintf( "/subscriptions/%s/resourceGroups/acctestrg-%d/providers/Microsoft.Network/loadBalancers/arm-test-loadbalancer-%d/loadBalancingRules/%s", subscriptionID, ri, ri, lbRuleName) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMLoadBalancerDestroy, Steps: []resource.TestStep{ { Config: testAccAzureRMLoadBalancerRule_basic(ri, lbRuleName), Check: resource.ComposeTestCheckFunc( testCheckAzureRMLoadBalancerExists("azurerm_lb.test", &lb), testCheckAzureRMLoadBalancerRuleExists(lbRuleName, &lb), resource.TestCheckResourceAttr( "azurerm_lb_rule.test", "id", lbRule_id), ), }, }, }) }
func TestAccAWSLoadBalancerListenerPolicy_basic(t *testing.T) { rChar := acctest.RandStringFromCharSet(6, acctest.CharSetAlpha) lbName := fmt.Sprintf("%s", rChar) mcName := fmt.Sprintf("%s", rChar) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckAWSLoadBalancerListenerPolicyDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccAWSLoadBalancerListenerPolicyConfig_basic0(lbName, mcName), Check: resource.ComposeTestCheckFunc( testAccCheckAWSLoadBalancerPolicyState("aws_elb.test-lb", "aws_load_balancer_policy.magic-cookie-sticky"), testAccCheckAWSLoadBalancerListenerPolicyState(lbName, int64(80), mcName, true), ), }, resource.TestStep{ Config: testAccAWSLoadBalancerListenerPolicyConfig_basic1(lbName, mcName), Check: resource.ComposeTestCheckFunc( testAccCheckAWSLoadBalancerPolicyState("aws_elb.test-lb", "aws_load_balancer_policy.magic-cookie-sticky"), testAccCheckAWSLoadBalancerListenerPolicyState(lbName, int64(80), mcName, true), ), }, resource.TestStep{ Config: testAccAWSLoadBalancerListenerPolicyConfig_basic2(lbName), Check: resource.ComposeTestCheckFunc( testAccCheckAWSLoadBalancerListenerPolicyState(lbName, int64(80), mcName, false), ), }, }, }) }
func TestResourceAzureRMLoadBalancerRuleNameLabel_validation(t *testing.T) { cases := []struct { Value string ErrCount int }{ { Value: "-word", ErrCount: 1, }, { Value: "testing-", ErrCount: 1, }, { Value: "test#test", ErrCount: 1, }, { Value: acctest.RandStringFromCharSet(81, "abcdedfed"), ErrCount: 1, }, { Value: "test.rule", ErrCount: 0, }, { Value: "test_rule", ErrCount: 0, }, { Value: "test-rule", ErrCount: 0, }, { Value: "TestRule", ErrCount: 0, }, { Value: "Test123Rule", ErrCount: 0, }, { Value: "TestRule", ErrCount: 0, }, } for _, tc := range cases { _, errors := validateArmLoadBalancerRuleName(tc.Value, "azurerm_lb_rule") if len(errors) != tc.ErrCount { t.Fatalf("Expected the Azure RM LoadBalancer Rule Name Label to trigger a validation error") } } }
// https://github.com/hashicorp/terraform/issues/9424 func TestAccAzureRMLoadBalancerRule_inconsistentReads(t *testing.T) { var lb network.LoadBalancer ri := acctest.RandInt() backendPoolName := fmt.Sprintf("LbPool-%s", acctest.RandStringFromCharSet(8, acctest.CharSetAlpha)) lbRuleName := fmt.Sprintf("LbRule-%s", acctest.RandStringFromCharSet(8, acctest.CharSetAlpha)) probeName := fmt.Sprintf("LbProbe-%s", acctest.RandStringFromCharSet(8, acctest.CharSetAlpha)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testCheckAzureRMLoadBalancerDestroy, Steps: []resource.TestStep{ { Config: testAccAzureRMLoadBalancerRule_inconsistentRead(ri, backendPoolName, probeName, lbRuleName), Check: resource.ComposeTestCheckFunc( testCheckAzureRMLoadBalancerExists("azurerm_lb.test", &lb), testCheckAzureRMLoadBalancerBackEndAddressPoolExists(backendPoolName, &lb), testCheckAzureRMLoadBalancerRuleExists(lbRuleName, &lb), testCheckAzureRMLoadBalancerProbeExists(probeName, &lb), ), }, }, }) }
func TestAccAWSSQSQueue_redrivePolicy(t *testing.T) { resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckAWSSQSQueueDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: testAccAWSSQSConfigWithRedrive(acctest.RandStringFromCharSet(5, acctest.CharSetAlpha)), Check: resource.ComposeTestCheckFunc( testAccCheckAWSSQSExistsWithDefaults("aws_sqs_queue.my_dead_letter_queue"), ), }, }, }) }
func TestAccAWSALBTargetGroupAttachment_basic(t *testing.T) { targetGroupName := fmt.Sprintf("test-target-group-%s", acctest.RandStringFromCharSet(10, acctest.CharSetAlphaNum)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, IDRefreshName: "aws_alb_target_group.test", Providers: testAccProviders, CheckDestroy: testAccCheckAWSALBTargetGroupAttachmentDestroy, Steps: []resource.TestStep{ { Config: testAccAWSALBTargetGroupAttachmentConfig_basic(targetGroupName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBTargetGroupAttachmentExists("aws_alb_target_group_attachment.test"), ), }, }, }) }
func TestAccAWSGroupMembership_basic(t *testing.T) { var group iam.GetGroupOutput rString := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha) configBase := fmt.Sprintf(testAccAWSGroupMemberConfig, rString, rString, rString) configUpdate := fmt.Sprintf(testAccAWSGroupMemberConfigUpdate, rString, rString, rString, rString) configUpdateDown := fmt.Sprintf(testAccAWSGroupMemberConfigUpdateDown, rString, rString, rString) testUser := fmt.Sprintf("test-user-%s", rString) testUserTwo := fmt.Sprintf("test-user-two-%s", rString) testUserThree := fmt.Sprintf("test-user-three-%s", rString) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, Providers: testAccProviders, CheckDestroy: testAccCheckAWSGroupMembershipDestroy, Steps: []resource.TestStep{ resource.TestStep{ Config: configBase, Check: resource.ComposeTestCheckFunc( testAccCheckAWSGroupMembershipExists("aws_iam_group_membership.team", &group), testAccCheckAWSGroupMembershipAttributes(&group, []string{testUser}), ), }, resource.TestStep{ Config: configUpdate, Check: resource.ComposeTestCheckFunc( testAccCheckAWSGroupMembershipExists("aws_iam_group_membership.team", &group), testAccCheckAWSGroupMembershipAttributes(&group, []string{testUserTwo, testUserThree}), ), }, resource.TestStep{ Config: configUpdateDown, Check: resource.ComposeTestCheckFunc( testAccCheckAWSGroupMembershipExists("aws_iam_group_membership.team", &group), testAccCheckAWSGroupMembershipAttributes(&group, []string{testUserThree}), ), }, }, }) }
func TestAccAWSALBTargetGroup_basic(t *testing.T) { var conf elbv2.TargetGroup targetGroupName := fmt.Sprintf("test-target-group-%s", acctest.RandStringFromCharSet(10, acctest.CharSetAlphaNum)) resource.Test(t, resource.TestCase{ PreCheck: func() { testAccPreCheck(t) }, IDRefreshName: "aws_alb_target_group.test", Providers: testAccProviders, CheckDestroy: testAccCheckAWSALBTargetGroupDestroy, Steps: []resource.TestStep{ { Config: testAccAWSALBTargetGroupConfig_basic(targetGroupName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckAWSALBTargetGroupExists("aws_alb_target_group.test", &conf), resource.TestCheckResourceAttrSet("aws_alb_target_group.test", "arn"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "name", targetGroupName), resource.TestCheckResourceAttr("aws_alb_target_group.test", "port", "443"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "protocol", "HTTPS"), resource.TestCheckResourceAttrSet("aws_alb_target_group.test", "vpc_id"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "deregistration_delay", "200"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "stickiness.#", "1"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "stickiness.0.enabled", "true"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "stickiness.0.type", "lb_cookie"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "stickiness.0.cookie_duration", "10000"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "health_check.#", "1"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "health_check.0.path", "/health"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "health_check.0.interval", "60"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "health_check.0.port", "8081"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "health_check.0.protocol", "HTTP"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "health_check.0.timeout", "3"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "health_check.0.healthy_threshold", "3"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "health_check.0.unhealthy_threshold", "3"), resource.TestCheckResourceAttr("aws_alb_target_group.test", "health_check.0.matcher", "200-299"), ), }, }, }) }