mirror of
https://github.com/anchore/syft.git
synced 2026-10-30 14:02:26 +01:00
@@ -37,7 +37,7 @@ func BenchmarkImagePackageCatalogers(b *testing.B) {
|
||||
|
||||
b.Run(c.Name(), func(b *testing.B) {
|
||||
for i := 0; i < b.N; i++ {
|
||||
pc, err = cataloger.Catalog(resolver, theDistro, c)
|
||||
pc, _, err = cataloger.Catalog(resolver, theDistro, c)
|
||||
if err != nil {
|
||||
b.Fatalf("failure during benchmark: %+v", err)
|
||||
}
|
||||
@@ -49,7 +49,7 @@ func BenchmarkImagePackageCatalogers(b *testing.B) {
|
||||
}
|
||||
|
||||
func TestPkgCoverageImage(t *testing.T) {
|
||||
catalog, _, _ := catalogFixtureImage(t, "image-pkg-coverage")
|
||||
catalog, _, _, _ := catalogFixtureImage(t, "image-pkg-coverage")
|
||||
|
||||
observedLanguages := internal.NewStringSet()
|
||||
definedLanguages := internal.NewStringSet()
|
||||
@@ -135,7 +135,7 @@ func TestPkgCoverageImage(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestPkgCoverageDirectory(t *testing.T) {
|
||||
catalog, _, _ := catalogDirectory(t, "test-fixtures/image-pkg-coverage")
|
||||
catalog, _, _, _ := catalogDirectory(t, "test-fixtures/image-pkg-coverage")
|
||||
|
||||
observedLanguages := internal.NewStringSet()
|
||||
definedLanguages := internal.NewStringSet()
|
||||
|
||||
@@ -8,7 +8,7 @@ import (
|
||||
)
|
||||
|
||||
func TestDistroImage(t *testing.T) {
|
||||
_, actualDistro, _ := catalogFixtureImage(t, "image-distro-id")
|
||||
_, _, actualDistro, _ := catalogFixtureImage(t, "image-distro-id")
|
||||
|
||||
expected, err := distro.NewDistro(distro.Busybox, "1.31.1", "")
|
||||
if err != nil {
|
||||
|
||||
@@ -9,7 +9,7 @@ import (
|
||||
)
|
||||
|
||||
func TestNpmPackageLockDirectory(t *testing.T) {
|
||||
catalog, _, _ := catalogDirectory(t, "test-fixtures/npm-lock")
|
||||
catalog, _, _, _ := catalogDirectory(t, "test-fixtures/npm-lock")
|
||||
|
||||
foundPackages := internal.NewStringSet()
|
||||
|
||||
@@ -30,7 +30,7 @@ func TestNpmPackageLockDirectory(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestYarnPackageLockDirectory(t *testing.T) {
|
||||
catalog, _, _ := catalogDirectory(t, "test-fixtures/yarn-lock")
|
||||
catalog, _, _, _ := catalogDirectory(t, "test-fixtures/yarn-lock")
|
||||
|
||||
foundPackages := internal.NewStringSet()
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ func TestPackageOwnershipRelationships(t *testing.T) {
|
||||
|
||||
for _, test := range tests {
|
||||
t.Run(test.fixture, func(t *testing.T) {
|
||||
catalog, d, src := catalogFixtureImage(t, test.fixture)
|
||||
catalog, _, d, src := catalogFixtureImage(t, test.fixture)
|
||||
|
||||
p := syftjson.Format().Presenter(sbom.SBOM{
|
||||
Artifacts: sbom.Artifacts{
|
||||
|
||||
@@ -9,7 +9,7 @@ import (
|
||||
func TestRegression212ApkBufferSize(t *testing.T) {
|
||||
// This is a regression test for issue #212 (https://github.com/anchore/syft/issues/212) in which the apk db could
|
||||
// not be processed due to a scanner buffer that was too small
|
||||
catalog, _, _ := catalogFixtureImage(t, "image-large-apk-data")
|
||||
catalog, _, _, _ := catalogFixtureImage(t, "image-large-apk-data")
|
||||
|
||||
expectedPkgs := 58
|
||||
actualPkgs := 0
|
||||
|
||||
@@ -15,7 +15,7 @@ func TestRegressionGoArchDiscovery(t *testing.T) {
|
||||
)
|
||||
// This is a regression test to make sure the way we detect go binary packages
|
||||
// stays consistent and reproducible as the tool chain evolves
|
||||
catalog, _, _ := catalogFixtureImage(t, "image-go-bin-arch-coverage")
|
||||
catalog, _, _, _ := catalogFixtureImage(t, "image-go-bin-arch-coverage")
|
||||
|
||||
var actualELF, actualWIN, actualMACOS int
|
||||
|
||||
|
||||
@@ -3,6 +3,8 @@ package integration
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/anchore/syft/syft/artifact"
|
||||
|
||||
"github.com/anchore/stereoscope/pkg/imagetest"
|
||||
"github.com/anchore/syft/syft"
|
||||
"github.com/anchore/syft/syft/distro"
|
||||
@@ -10,7 +12,7 @@ import (
|
||||
"github.com/anchore/syft/syft/source"
|
||||
)
|
||||
|
||||
func catalogFixtureImage(t *testing.T, fixtureImageName string) (*pkg.Catalog, *distro.Distro, *source.Source) {
|
||||
func catalogFixtureImage(t *testing.T, fixtureImageName string) (*pkg.Catalog, []artifact.Relationship, *distro.Distro, *source.Source) {
|
||||
imagetest.GetFixtureImage(t, "docker-archive", fixtureImageName)
|
||||
tarPath := imagetest.GetFixtureImageTarPath(t, fixtureImageName)
|
||||
|
||||
@@ -20,25 +22,25 @@ func catalogFixtureImage(t *testing.T, fixtureImageName string) (*pkg.Catalog, *
|
||||
t.Fatalf("unable to get source: %+v", err)
|
||||
}
|
||||
|
||||
pkgCatalog, actualDistro, err := syft.CatalogPackages(theSource, source.SquashedScope)
|
||||
pkgCatalog, relationships, actualDistro, err := syft.CatalogPackages(theSource, source.SquashedScope)
|
||||
if err != nil {
|
||||
t.Fatalf("failed to catalog image: %+v", err)
|
||||
}
|
||||
|
||||
return pkgCatalog, actualDistro, theSource
|
||||
return pkgCatalog, relationships, actualDistro, theSource
|
||||
}
|
||||
|
||||
func catalogDirectory(t *testing.T, dir string) (*pkg.Catalog, *distro.Distro, *source.Source) {
|
||||
func catalogDirectory(t *testing.T, dir string) (*pkg.Catalog, []artifact.Relationship, *distro.Distro, *source.Source) {
|
||||
theSource, cleanupSource, err := source.New("dir:"+dir, nil)
|
||||
t.Cleanup(cleanupSource)
|
||||
if err != nil {
|
||||
t.Fatalf("unable to get source: %+v", err)
|
||||
}
|
||||
|
||||
pkgCatalog, actualDistro, err := syft.CatalogPackages(theSource, source.AllLayersScope)
|
||||
pkgCatalog, relationships, actualDistro, err := syft.CatalogPackages(theSource, source.AllLayersScope)
|
||||
if err != nil {
|
||||
t.Fatalf("failed to catalog image: %+v", err)
|
||||
}
|
||||
|
||||
return pkgCatalog, actualDistro, theSource
|
||||
return pkgCatalog, relationships, actualDistro, theSource
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user