github.com/lineaje-labs/syft@v0.98.1-0.20231227153149-9e393f60ff1b/syft/format/common/cyclonedxhelpers/group_test.go (about) 1 package cyclonedxhelpers 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 8 "github.com/anchore/syft/syft/pkg" 9 ) 10 11 func Test_encodeGroup(t *testing.T) { 12 tests := []struct { 13 name string 14 input pkg.Package 15 expected string 16 }{ 17 { 18 name: "no metadata", 19 input: pkg.Package{}, 20 expected: "", 21 }, 22 { 23 name: "metadata is not Java", 24 input: pkg.Package{ 25 Metadata: pkg.NpmPackage{}, 26 }, 27 expected: "", 28 }, 29 { 30 name: "metadata is Java but pom properties is empty", 31 input: pkg.Package{ 32 Metadata: pkg.JavaArchive{}, 33 }, 34 expected: "", 35 }, 36 { 37 name: "metadata is Java and contains pomProperties", 38 input: pkg.Package{ 39 Metadata: pkg.JavaArchive{ 40 PomProperties: &pkg.JavaPomProperties{ 41 GroupID: "test", 42 }, 43 }, 44 }, 45 expected: "test", 46 }, 47 } 48 for _, test := range tests { 49 t.Run(test.name, func(t *testing.T) { 50 assert.Equal(t, test.expected, encodeGroup(test.input)) 51 }) 52 } 53 }