Skip to content

Commit 70c6583

Browse files
committed
Add an acctest for multiple stateful_rule_group_reference
1 parent 9f4f774 commit 70c6583

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

internal/service/networkfirewall/firewall_policy_data_source_test.go

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,35 @@ func TestAccNetworkFirewallFirewallPolicyDataSource_statefulEngineOptions(t *tes
223223
})
224224
}
225225

226+
func TestAccNetworkFirewallFirewallPolicyDataSource_multipleStatefulRuleGroupReferences(t *testing.T) {
227+
ctx := acctest.Context(t)
228+
rName := sdkacctest.RandomWithPrefix("resource-test-terraform")
229+
resourceName := "aws_networkfirewall_firewall_policy.test"
230+
datasourceName := "data.aws_networkfirewall_firewall_policy.test"
231+
ruleGroupResourceName1 := "aws_networkfirewall_rule_group.test.0"
232+
ruleGroupResourceName2 := "aws_networkfirewall_rule_group.test.1"
233+
234+
resource.ParallelTest(t, resource.TestCase{
235+
PreCheck: func() { acctest.PreCheck(ctx, t); testAccPreCheck(ctx, t) },
236+
ErrorCheck: acctest.ErrorCheck(t, names.NetworkFirewallServiceID),
237+
ProtoV5ProviderFactories: acctest.ProtoV5ProviderFactories,
238+
Steps: []resource.TestStep{
239+
{
240+
Config: testAccFirewallPolicyDataSourceConfig_multipleStatefulRuleGroupReferences(rName),
241+
Check: resource.ComposeAggregateTestCheckFunc(
242+
resource.TestCheckResourceAttrPair(datasourceName, names.AttrARN, resourceName, names.AttrARN), resource.TestCheckResourceAttrPair(datasourceName, names.AttrDescription, resourceName, names.AttrDescription),
243+
resource.TestCheckResourceAttrPair(datasourceName, "firewall_policy.#", resourceName, "firewall_policy.#"),
244+
resource.TestCheckResourceAttrPair(datasourceName, "firewall_policy.0.stateful_rule_group_reference.#", resourceName, "firewall_policy.0.stateful_rule_group_reference.#"),
245+
resource.TestCheckTypeSetElemAttrPair(datasourceName, "firewall_policy.0.stateful_rule_group_reference.*.resource_arn", ruleGroupResourceName1, names.AttrARN),
246+
resource.TestCheckTypeSetElemAttrPair(datasourceName, "firewall_policy.0.stateful_rule_group_reference.*.resource_arn", ruleGroupResourceName2, names.AttrARN),
247+
resource.TestCheckResourceAttrPair(datasourceName, names.AttrName, resourceName, names.AttrName),
248+
resource.TestCheckResourceAttrPair(datasourceName, acctest.CtTagsPercent, resourceName, acctest.CtTagsPercent),
249+
),
250+
},
251+
},
252+
})
253+
}
254+
226255
func testAccFirewallPolicyDataSourceConfig_basic(rName string) string {
227256
return fmt.Sprintf(`
228257
resource "aws_networkfirewall_firewall_policy" "test" {
@@ -361,3 +390,11 @@ data "aws_networkfirewall_firewall_policy" "test" {
361390
}
362391
`, rName)
363392
}
393+
394+
func testAccFirewallPolicyDataSourceConfig_multipleStatefulRuleGroupReferences(rName string) string {
395+
return acctest.ConfigCompose(testAccFirewallPolicyConfig_multipleStatefulRuleGroupReferences(rName), `
396+
data "aws_networkfirewall_firewall_policy" "test" {
397+
arn = aws_networkfirewall_firewall_policy.test.arn
398+
}
399+
`)
400+
}

0 commit comments

Comments
 (0)