github.com/khulnasoft-lab/defsec@v1.0.5-0.20230827010352-5e9f46893d95/internal/adapters/terraform/nifcloud/computing/adapt_test.go (about) 1 package computing 2 3 import ( 4 "testing" 5 6 "github.com/khulnasoft-lab/defsec/internal/adapters/terraform/tftestutil" 7 8 "github.com/stretchr/testify/assert" 9 "github.com/stretchr/testify/require" 10 ) 11 12 func TestLines(t *testing.T) { 13 src := ` 14 resource "nifcloud_instance" "example" { 15 security_group = nifcloud_security_group.example.group_name 16 17 network_interface { 18 network_id = "net-COMMON_PRIVATE" 19 } 20 } 21 22 resource "nifcloud_security_group" "example" { 23 group_name = "example" 24 description = "memo" 25 } 26 27 resource "nifcloud_security_group_rule" "example" { 28 type = "IN" 29 security_group_names = [nifcloud_security_group.example.group_name] 30 from_port = 22 31 to_port = 22 32 protocol = "TCP" 33 description = "memo" 34 cidr_ip = "1.2.3.4/32" 35 } 36 ` 37 38 modules := tftestutil.CreateModulesFromSource(t, src, ".tf") 39 adapted := Adapt(modules) 40 41 require.Len(t, adapted.Instances, 1) 42 require.Len(t, adapted.SecurityGroups, 1) 43 44 instance := adapted.Instances[0] 45 sg := adapted.SecurityGroups[0] 46 47 assert.Equal(t, 3, instance.SecurityGroup.GetMetadata().Range().GetStartLine()) 48 assert.Equal(t, 3, instance.SecurityGroup.GetMetadata().Range().GetEndLine()) 49 50 assert.Equal(t, 6, instance.NetworkInterfaces[0].NetworkID.GetMetadata().Range().GetStartLine()) 51 assert.Equal(t, 6, instance.NetworkInterfaces[0].NetworkID.GetMetadata().Range().GetEndLine()) 52 53 assert.Equal(t, 12, sg.Description.GetMetadata().Range().GetStartLine()) 54 assert.Equal(t, 12, sg.Description.GetMetadata().Range().GetEndLine()) 55 56 assert.Equal(t, 21, sg.IngressRules[0].Description.GetMetadata().Range().GetStartLine()) 57 assert.Equal(t, 21, sg.IngressRules[0].Description.GetMetadata().Range().GetEndLine()) 58 59 assert.Equal(t, 22, sg.IngressRules[0].CIDR.GetMetadata().Range().GetStartLine()) 60 assert.Equal(t, 22, sg.IngressRules[0].CIDR.GetMetadata().Range().GetEndLine()) 61 }