github.com/khulnasoft-lab/defsec@v1.0.5-0.20230827010352-5e9f46893d95/internal/adapters/terraform/nifcloud/network/vpn_gateway_test.go (about) 1 package network 2 3 import ( 4 "testing" 5 6 "github.com/khulnasoft-lab/defsec/pkg/providers/nifcloud/network" 7 defsecTypes "github.com/khulnasoft-lab/defsec/pkg/types" 8 9 "github.com/khulnasoft-lab/defsec/internal/adapters/terraform/tftestutil" 10 11 "github.com/khulnasoft-lab/defsec/test/testutil" 12 ) 13 14 func Test_adaptVpnGateways(t *testing.T) { 15 tests := []struct { 16 name string 17 terraform string 18 expected []network.VpnGateway 19 }{ 20 { 21 name: "configured", 22 terraform: ` 23 resource "nifcloud_vpn_gateway" "example" { 24 security_group = "example-security-group" 25 } 26 `, 27 expected: []network.VpnGateway{{ 28 Metadata: defsecTypes.NewTestMetadata(), 29 SecurityGroup: defsecTypes.String("example-security-group", defsecTypes.NewTestMetadata()), 30 }}, 31 }, 32 { 33 name: "defaults", 34 terraform: ` 35 resource "nifcloud_vpn_gateway" "example" { 36 } 37 `, 38 39 expected: []network.VpnGateway{{ 40 Metadata: defsecTypes.NewTestMetadata(), 41 SecurityGroup: defsecTypes.String("", defsecTypes.NewTestMetadata()), 42 }}, 43 }, 44 } 45 46 for _, test := range tests { 47 t.Run(test.name, func(t *testing.T) { 48 modules := tftestutil.CreateModulesFromSource(t, test.terraform, ".tf") 49 adapted := adaptVpnGateways(modules) 50 testutil.AssertDefsecEqual(t, test.expected, adapted) 51 }) 52 } 53 }