github.com/anchore/syft@v1.4.2-0.20240516191711-1bec1fc5d397/syft/pkg/cataloger/java/cataloger_test.go (about) 1 package java 2 3 import ( 4 "testing" 5 6 "github.com/anchore/syft/syft/cataloging" 7 "github.com/anchore/syft/syft/pkg/cataloger/internal/pkgtest" 8 ) 9 10 func Test_ArchiveCataloger_Globs(t *testing.T) { 11 tests := []struct { 12 name string 13 fixture string 14 expected []string 15 }{ 16 { 17 name: "obtain java archive files", 18 fixture: "test-fixtures/glob-paths", 19 expected: []string{ 20 "java-archives/example.jar", 21 "java-archives/example.war", 22 "java-archives/example.ear", 23 "java-archives/example.par", 24 "java-archives/example.sar", 25 "java-archives/example.nar", 26 "java-archives/example.jpi", 27 "java-archives/example.hpi", 28 "java-archives/example.lpkg", 29 "archives/example.zip", 30 "archives/example.tar", 31 "archives/example.tar.gz", 32 "archives/example.tgz", 33 "archives/example.tar.bz", 34 "archives/example.tar.bz2", 35 "archives/example.tbz", 36 "archives/example.tbz2", 37 "archives/example.tar.br", 38 "archives/example.tbr", 39 "archives/example.tar.lz4", 40 "archives/example.tlz4", 41 "archives/example.tar.sz", 42 "archives/example.tsz", 43 "archives/example.tar.xz", 44 "archives/example.txz", 45 "archives/example.tar.zst", 46 "archives/example.tzst", 47 "archives/example.tar.zstd", 48 "archives/example.tzstd", 49 }, 50 }, 51 } 52 53 for _, test := range tests { 54 t.Run(test.name, func(t *testing.T) { 55 pkgtest.NewCatalogTester(). 56 FromDirectory(t, test.fixture). 57 ExpectsResolverContentQueries(test.expected). 58 TestCataloger(t, 59 NewArchiveCataloger( 60 ArchiveCatalogerConfig{ 61 ArchiveSearchConfig: cataloging.ArchiveSearchConfig{ 62 IncludeIndexedArchives: true, 63 IncludeUnindexedArchives: true, 64 }, 65 }, 66 ), 67 ) 68 }) 69 } 70 } 71 72 func Test_POMCataloger_Globs(t *testing.T) { 73 tests := []struct { 74 name string 75 fixture string 76 expected []string 77 }{ 78 { 79 name: "obtain java pom files", 80 fixture: "test-fixtures/glob-paths", 81 expected: []string{ 82 "src/pom.xml", 83 }, 84 }, 85 } 86 87 for _, test := range tests { 88 t.Run(test.name, func(t *testing.T) { 89 pkgtest.NewCatalogTester(). 90 FromDirectory(t, test.fixture). 91 ExpectsResolverContentQueries(test.expected). 92 TestCataloger(t, 93 NewPomCataloger( 94 ArchiveCatalogerConfig{ 95 ArchiveSearchConfig: cataloging.ArchiveSearchConfig{ 96 IncludeIndexedArchives: true, 97 IncludeUnindexedArchives: true, 98 }, 99 }, 100 )) 101 }) 102 } 103 }