github.com/khulnasoft-lab/defsec@v1.0.5-0.20230827010352-5e9f46893d95/internal/adapters/terraform/tftestutil/testutil.go (about) 1 package tftestutil 2 3 import ( 4 "context" 5 "testing" 6 7 "github.com/khulnasoft-lab/defsec/pkg/scanners/terraform/parser" 8 "github.com/khulnasoft-lab/defsec/pkg/terraform" 9 10 "github.com/khulnasoft-lab/defsec/test/testutil" 11 ) 12 13 func CreateModulesFromSource(t *testing.T, source string, ext string) terraform.Modules { 14 fs := testutil.CreateFS(t, map[string]string{ 15 "source" + ext: source, 16 }) 17 p := parser.New(fs, "", parser.OptionStopOnHCLError(true)) 18 if err := p.ParseFS(context.TODO(), "."); err != nil { 19 t.Fatal(err) 20 } 21 modules, _, err := p.EvaluateAll(context.TODO()) 22 if err != nil { 23 t.Fatalf("parse error: %s", err) 24 } 25 return modules 26 }