@@ -36,8 +36,27 @@ func TestAccAWSDefaultNetworkAcl_basic(t *testing.T) {
3636 resource.TestStep {
3737 Config : testAccAWSDefaultNetworkConfig_basic ,
3838 Check : resource .ComposeTestCheckFunc (
39- testAccGetWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
40- testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {}, 0 ),
39+ testAccGetAWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
40+ testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {}, 0 , 2 ),
41+ ),
42+ },
43+ },
44+ })
45+ }
46+
47+ func TestAccAWSDefaultNetworkAcl_basicIpv6Vpc (t * testing.T ) {
48+ var networkAcl ec2.NetworkAcl
49+
50+ resource .Test (t , resource.TestCase {
51+ PreCheck : func () { testAccPreCheck (t ) },
52+ Providers : testAccProviders ,
53+ CheckDestroy : testAccCheckAWSDefaultNetworkAclDestroy ,
54+ Steps : []resource.TestStep {
55+ resource.TestStep {
56+ Config : testAccAWSDefaultNetworkConfig_basicIpv6Vpc ,
57+ Check : resource .ComposeTestCheckFunc (
58+ testAccGetAWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
59+ testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {}, 0 , 4 ),
4160 ),
4261 },
4362 },
@@ -58,8 +77,8 @@ func TestAccAWSDefaultNetworkAcl_deny_ingress(t *testing.T) {
5877 resource.TestStep {
5978 Config : testAccAWSDefaultNetworkConfig_deny_ingress ,
6079 Check : resource .ComposeTestCheckFunc (
61- testAccGetWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
62- testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {defaultEgressAcl }, 0 ),
80+ testAccGetAWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
81+ testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {defaultEgressAcl }, 0 , 2 ),
6382 ),
6483 },
6584 },
@@ -77,8 +96,8 @@ func TestAccAWSDefaultNetworkAcl_SubnetRemoval(t *testing.T) {
7796 resource.TestStep {
7897 Config : testAccAWSDefaultNetworkConfig_Subnets ,
7998 Check : resource .ComposeTestCheckFunc (
80- testAccGetWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
81- testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {}, 2 ),
99+ testAccGetAWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
100+ testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {}, 2 , 2 ),
82101 ),
83102 },
84103
@@ -88,8 +107,8 @@ func TestAccAWSDefaultNetworkAcl_SubnetRemoval(t *testing.T) {
88107 resource.TestStep {
89108 Config : testAccAWSDefaultNetworkConfig_Subnets_remove ,
90109 Check : resource .ComposeTestCheckFunc (
91- testAccGetWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
92- testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {}, 2 ),
110+ testAccGetAWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
111+ testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {}, 2 , 2 ),
93112 ),
94113 ExpectNonEmptyPlan : true ,
95114 },
@@ -108,8 +127,8 @@ func TestAccAWSDefaultNetworkAcl_SubnetReassign(t *testing.T) {
108127 resource.TestStep {
109128 Config : testAccAWSDefaultNetworkConfig_Subnets ,
110129 Check : resource .ComposeTestCheckFunc (
111- testAccGetWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
112- testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {}, 2 ),
130+ testAccGetAWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
131+ testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {}, 2 , 2 ),
113132 ),
114133 },
115134
@@ -128,8 +147,8 @@ func TestAccAWSDefaultNetworkAcl_SubnetReassign(t *testing.T) {
128147 resource.TestStep {
129148 Config : testAccAWSDefaultNetworkConfig_Subnets_move ,
130149 Check : resource .ComposeTestCheckFunc (
131- testAccGetWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
132- testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {}, 0 ),
150+ testAccGetAWSDefaultNetworkAcl ("aws_default_network_acl.default" , & networkAcl ),
151+ testAccCheckAWSDefaultACLAttributes (& networkAcl , []* ec2.NetworkAclEntry {}, 0 , 2 ),
133152 ),
134153 },
135154 },
@@ -141,14 +160,14 @@ func testAccCheckAWSDefaultNetworkAclDestroy(s *terraform.State) error {
141160 return nil
142161}
143162
144- func testAccCheckAWSDefaultACLAttributes (acl * ec2.NetworkAcl , rules []* ec2.NetworkAclEntry , subnetCount int ) resource.TestCheckFunc {
163+ func testAccCheckAWSDefaultACLAttributes (acl * ec2.NetworkAcl , rules []* ec2.NetworkAclEntry , subnetCount int , hiddenRuleCount int ) resource.TestCheckFunc {
145164 return func (s * terraform.State ) error {
146165
147166 aclEntriesCount := len (acl .Entries )
148167 ruleCount := len (rules )
149168
150- // Default ACL has 2 hidden rules we can't do anything about
151- ruleCount = ruleCount + 2
169+ // Default ACL has hidden rules we can't do anything about
170+ ruleCount = ruleCount + hiddenRuleCount
152171
153172 if ruleCount != aclEntriesCount {
154173 return fmt .Errorf ("Expected (%d) Rules, got (%d)" , ruleCount , aclEntriesCount )
@@ -162,7 +181,7 @@ func testAccCheckAWSDefaultACLAttributes(acl *ec2.NetworkAcl, rules []*ec2.Netwo
162181 }
163182}
164183
165- func testAccGetWSDefaultNetworkAcl (n string , networkAcl * ec2.NetworkAcl ) resource.TestCheckFunc {
184+ func testAccGetAWSDefaultNetworkAcl (n string , networkAcl * ec2.NetworkAcl ) resource.TestCheckFunc {
166185 return func (s * terraform.State ) error {
167186 rs , ok := s .RootModule ().Resources [n ]
168187 if ! ok {
@@ -426,3 +445,26 @@ resource "aws_default_network_acl" "default" {
426445 }
427446}
428447`
448+
449+ const testAccAWSDefaultNetworkConfig_basicIpv6Vpc = `
450+ provider "aws" {
451+ region = "us-east-2"
452+ }
453+
454+ resource "aws_vpc" "tftestvpc" {
455+ cidr_block = "10.1.0.0/16"
456+ assign_generated_ipv6_cidr_block = true
457+
458+ tags {
459+ Name = "TestAccAWSDefaultNetworkAcl_basicIpv6Vpc"
460+ }
461+ }
462+
463+ resource "aws_default_network_acl" "default" {
464+ default_network_acl_id = "${aws_vpc.tftestvpc.default_network_acl_id}"
465+
466+ tags {
467+ Name = "TestAccAWSDefaultNetworkAcl_basicIpv6Vpc"
468+ }
469+ }
470+ `
0 commit comments