Skip to content

Commit

Permalink
Merge pull request #40909 from hashicorp/td-testcheckresourceattrset-…
Browse files Browse the repository at this point in the history
…arn-d

testing: Reduce uses of `resource.TestCheckResourceAttrSet` with ARN attributes: `connect` and `d` services
  • Loading branch information
gdavison authored Jan 14, 2025
2 parents 6a81718 + 04a7626 commit e2b3d62
Show file tree
Hide file tree
Showing 29 changed files with 86 additions and 90 deletions.
8 changes: 0 additions & 8 deletions .ci/semgrep/acctest/checks/arn.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,7 @@ rules:
message: Use one of the `acctest` ARN value checks or TestCheckResourceAttrPair
paths:
exclude:
- "internal/service/connect"
- "internal/service/controltower"
- "internal/service/datazone"
- "internal/service/deploy"
- "internal/service/directconnect"
- "internal/service/dms"
- "internal/service/docdb"
- "internal/service/docdbelastic"
- "internal/service/drs"
- "internal/service/ec2"
- "internal/service/elasticache"
- "internal/service/elasticbeanstalk"
Expand Down
8 changes: 4 additions & 4 deletions internal/service/connect/contact_flow_module_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ func testAccContactFlowModule_basic(t *testing.T) {
Config: testAccContactFlowModuleConfig_basic(rName, rName2, "Created"),
Check: resource.ComposeTestCheckFunc(
testAccCheckContactFlowModuleExists(ctx, resourceName, &v),
resource.TestCheckResourceAttrSet(resourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{instance_id}/flow-module/{contact_flow_module_id}"),
resource.TestCheckResourceAttrSet(resourceName, "contact_flow_module_id"),
resource.TestCheckResourceAttrSet(resourceName, names.AttrContent),
resource.TestCheckResourceAttrSet(resourceName, names.AttrInstanceID),
Expand All @@ -54,7 +54,7 @@ func testAccContactFlowModule_basic(t *testing.T) {
Config: testAccContactFlowModuleConfig_basic(rName, rName2, "Updated"),
Check: resource.ComposeAggregateTestCheckFunc(
testAccCheckContactFlowModuleExists(ctx, resourceName, &v),
resource.TestCheckResourceAttrSet(resourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{instance_id}/flow-module/{contact_flow_module_id}"),
resource.TestCheckResourceAttrSet(resourceName, "contact_flow_module_id"),
resource.TestCheckResourceAttrSet(resourceName, names.AttrContent),
resource.TestCheckResourceAttrSet(resourceName, names.AttrInstanceID),
Expand Down Expand Up @@ -84,7 +84,7 @@ func testAccContactFlowModule_filename(t *testing.T) {
Config: testAccContactFlowModuleConfig_filename(rName, rName2, "Created", "test-fixtures/connect_contact_flow_module.json"),
Check: resource.ComposeTestCheckFunc(
testAccCheckContactFlowModuleExists(ctx, resourceName, &v),
resource.TestCheckResourceAttrSet(resourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{instance_id}/flow-module/{contact_flow_module_id}"),
resource.TestCheckResourceAttrSet(resourceName, "contact_flow_module_id"),
resource.TestCheckResourceAttrSet(resourceName, names.AttrInstanceID),
resource.TestCheckResourceAttrSet(resourceName, names.AttrName),
Expand All @@ -105,7 +105,7 @@ func testAccContactFlowModule_filename(t *testing.T) {
Config: testAccContactFlowModuleConfig_filename(rName, rName2, "Updated", "test-fixtures/connect_contact_flow_module_updated.json"),
Check: resource.ComposeAggregateTestCheckFunc(
testAccCheckContactFlowModuleExists(ctx, resourceName, &v),
resource.TestCheckResourceAttrSet(resourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{instance_id}/flow-module/{contact_flow_module_id}"),
resource.TestCheckResourceAttrSet(resourceName, "contact_flow_module_id"),
resource.TestCheckResourceAttrSet(resourceName, names.AttrInstanceID),
resource.TestCheckResourceAttrSet(resourceName, names.AttrName),
Expand Down
8 changes: 4 additions & 4 deletions internal/service/connect/contact_flow_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ func testAccContactFlow_basic(t *testing.T) {
Config: testAccContactFlowConfig_basic(rName, rName2, "Created"),
Check: resource.ComposeTestCheckFunc(
testAccCheckContactFlowExists(ctx, resourceName, &v),
resource.TestCheckResourceAttrSet(resourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{instance_id}/contact-flow/{contact_flow_id}"),
resource.TestCheckResourceAttrSet(resourceName, "contact_flow_id"),
resource.TestCheckResourceAttrSet(resourceName, names.AttrInstanceID),
resource.TestCheckResourceAttrSet(resourceName, names.AttrName),
Expand All @@ -55,7 +55,7 @@ func testAccContactFlow_basic(t *testing.T) {
Config: testAccContactFlowConfig_basic(rName, rName2, "Updated"),
Check: resource.ComposeAggregateTestCheckFunc(
testAccCheckContactFlowExists(ctx, resourceName, &v),
resource.TestCheckResourceAttrSet(resourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{instance_id}/contact-flow/{contact_flow_id}"),
resource.TestCheckResourceAttrSet(resourceName, "contact_flow_id"),
resource.TestCheckResourceAttrSet(resourceName, names.AttrInstanceID),
resource.TestCheckResourceAttrSet(resourceName, names.AttrName),
Expand Down Expand Up @@ -86,7 +86,7 @@ func testAccContactFlow_filename(t *testing.T) {
Config: testAccContactFlowConfig_filename(rName, rName2, "Created", "test-fixtures/connect_contact_flow.json"),
Check: resource.ComposeTestCheckFunc(
testAccCheckContactFlowExists(ctx, resourceName, &v),
resource.TestCheckResourceAttrSet(resourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{instance_id}/contact-flow/{contact_flow_id}"),
resource.TestCheckResourceAttrSet(resourceName, "contact_flow_id"),
resource.TestCheckResourceAttrSet(resourceName, names.AttrInstanceID),
resource.TestCheckResourceAttrSet(resourceName, names.AttrName),
Expand All @@ -108,7 +108,7 @@ func testAccContactFlow_filename(t *testing.T) {
Config: testAccContactFlowConfig_filename(rName, rName2, "Updated", "test-fixtures/connect_contact_flow_updated.json"),
Check: resource.ComposeAggregateTestCheckFunc(
testAccCheckContactFlowExists(ctx, resourceName, &v),
resource.TestCheckResourceAttrSet(resourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{instance_id}/contact-flow/{contact_flow_id}"),
resource.TestCheckResourceAttrSet(resourceName, "contact_flow_id"),
resource.TestCheckResourceAttrSet(resourceName, names.AttrInstanceID),
resource.TestCheckResourceAttrSet(resourceName, names.AttrName),
Expand Down
4 changes: 2 additions & 2 deletions internal/service/connect/hours_of_operation_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ func testAccHoursOfOperation_basic(t *testing.T) {
Config: testAccHoursOfOperationConfig_basic(rName, rName2, originalDescription),
Check: resource.ComposeTestCheckFunc(
testAccCheckHoursOfOperationExists(ctx, resourceName, &v),
resource.TestCheckResourceAttrSet(resourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{instance_id}/operating-hours/{hours_of_operation_id}"),
resource.TestCheckResourceAttr(resourceName, "config.#", "1"),
resource.TestCheckTypeSetElemNestedAttrs(resourceName, "config.*", map[string]string{
"day": "MONDAY",
Expand Down Expand Up @@ -68,7 +68,7 @@ func testAccHoursOfOperation_basic(t *testing.T) {
Config: testAccHoursOfOperationConfig_basic(rName, rName2, updatedDescription),
Check: resource.ComposeAggregateTestCheckFunc(
testAccCheckHoursOfOperationExists(ctx, resourceName, &v),
resource.TestCheckResourceAttrSet(resourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{instance_id}/operating-hours/{hours_of_operation_id}"),
resource.TestCheckResourceAttr(resourceName, "config.#", "1"),
resource.TestCheckTypeSetElemNestedAttrs(resourceName, "config.*", map[string]string{
"day": "MONDAY",
Expand Down
6 changes: 3 additions & 3 deletions internal/service/connect/instance_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ func testAccInstance_basic(t *testing.T) {
Config: testAccInstanceConfig_basic(rName),
Check: resource.ComposeTestCheckFunc(
testAccCheckInstanceExists(ctx, resourceName, &v),
acctest.MatchResourceAttrRegionalARN(ctx, resourceName, names.AttrARN, "connect", regexache.MustCompile(`instance/.+`)),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{id}"),
resource.TestCheckResourceAttr(resourceName, "auto_resolve_best_voices_enabled", acctest.CtTrue), //verified default result from ListInstanceAttributes()
resource.TestCheckResourceAttr(resourceName, "contact_flow_logs_enabled", acctest.CtFalse), //verified default result from ListInstanceAttributes()
resource.TestCheckResourceAttr(resourceName, "contact_lens_enabled", acctest.CtTrue), //verified default result from ListInstanceAttributes()
Expand All @@ -47,7 +47,7 @@ func testAccInstance_basic(t *testing.T) {
resource.TestMatchResourceAttr(resourceName, "instance_alias", regexache.MustCompile(rName)),
resource.TestCheckResourceAttr(resourceName, "multi_party_conference_enabled", acctest.CtFalse),
resource.TestCheckResourceAttr(resourceName, "outbound_calls_enabled", acctest.CtTrue),
acctest.MatchResourceAttrGlobalARN(ctx, resourceName, names.AttrServiceRole, "iam", regexache.MustCompile(`role/aws-service-role/connect.amazonaws.com/.+`)),
acctest.MatchResourceAttrGlobalARN(ctx, resourceName, names.AttrServiceRole, "iam", regexache.MustCompile(`role/aws-service-role/connect.amazonaws.com/AWSServiceRoleForAmazonConnect_[A-Za-z0-9]+$`)),
resource.TestCheckResourceAttr(resourceName, names.AttrStatus, string(awstypes.InstanceStatusActive)),
resource.TestCheckResourceAttr(resourceName, acctest.CtTagsPercent, "0"),
),
Expand All @@ -61,7 +61,7 @@ func testAccInstance_basic(t *testing.T) {
Config: testAccInstanceConfig_basicFlipped(rName),
Check: resource.ComposeTestCheckFunc(
testAccCheckInstanceExists(ctx, resourceName, &v),
acctest.MatchResourceAttrRegionalARN(ctx, resourceName, names.AttrARN, "connect", regexache.MustCompile(`instance/.+`)),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "instance/{id}"),
resource.TestCheckResourceAttr(resourceName, "auto_resolve_best_voices_enabled", acctest.CtFalse),
resource.TestCheckResourceAttr(resourceName, "contact_flow_logs_enabled", acctest.CtTrue),
resource.TestCheckResourceAttr(resourceName, "contact_lens_enabled", acctest.CtFalse),
Expand Down
2 changes: 1 addition & 1 deletion internal/service/connect/phone_number_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ func testAccPhoneNumber_basic(t *testing.T) {
Config: testAccPhoneNumberConfig_basic(rName),
Check: resource.ComposeTestCheckFunc(
testAccCheckPhoneNumberExists(ctx, resourceName, &v),
resource.TestCheckResourceAttrSet(resourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, resourceName, names.AttrARN, "connect", "phone-number/{id}"),
resource.TestCheckResourceAttr(resourceName, "country_code", "US"),
resource.TestCheckResourceAttrSet(resourceName, "phone_number"),
resource.TestCheckResourceAttr(resourceName, "status.#", "1"),
Expand Down
2 changes: 1 addition & 1 deletion internal/service/connect/prompt_data_source_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ func testAccPromptDataSource_name(t *testing.T) {
{
Config: testAccPromptDataSourceConfig_name(rName),
Check: resource.ComposeAggregateTestCheckFunc(
resource.TestCheckResourceAttrSet(datasourceName, names.AttrARN),
acctest.CheckResourceAttrRegionalARNFormat(ctx, datasourceName, names.AttrARN, "connect", "instance/{instance_id}/prompt/{prompt_id}"),
resource.TestCheckResourceAttrPair(datasourceName, names.AttrInstanceID, "aws_connect_instance.test", names.AttrID),
resource.TestCheckResourceAttr(datasourceName, names.AttrName, "Beep.wav"),
resource.TestCheckResourceAttrSet(datasourceName, "prompt_id"),
Expand Down
Loading

0 comments on commit e2b3d62

Please sign in to comment.