From c996ae16c2f9b86e7488fdbac836643adbfa4971 Mon Sep 17 00:00:00 2001 From: Dima R <90623914+cx-dmitri-rivin@users.noreply.github.com> Date: Tue, 22 Jul 2025 12:34:52 +0300 Subject: [PATCH 1/2] versions update --- go.mod | 6 +++--- go.sum | 12 ++++++------ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/go.mod b/go.mod index ba9d985..406fbfc 100644 --- a/go.mod +++ b/go.mod @@ -3,9 +3,9 @@ module github.com/Checkmarx/containers-resolver go 1.24.1 require ( - github.com/Checkmarx/containers-images-extractor v1.0.10 - github.com/Checkmarx/containers-syft-packages-extractor v1.0.14 - github.com/Checkmarx/containers-types v1.0.4 + github.com/Checkmarx/containers-images-extractor v1.0.16 + github.com/Checkmarx/containers-syft-packages-extractor v1.0.15 + github.com/Checkmarx/containers-types v1.0.9 github.com/rs/zerolog v1.34.0 github.com/stretchr/testify v1.10.0 ) diff --git a/go.sum b/go.sum index 563890c..aac8c7b 100644 --- a/go.sum +++ b/go.sum @@ -61,12 +61,12 @@ github.com/BurntSushi/toml v0.4.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbi github.com/BurntSushi/toml v1.5.0 h1:W5quZX/G/csjUnuI8SUYlsHs9M38FC7znL0lIO+DvMg= github.com/BurntSushi/toml v1.5.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= -github.com/Checkmarx/containers-images-extractor v1.0.10 h1:RxXbw03SPkVjvw2XR05RSLh+YTTQ2KshrQhOhTMFey8= -github.com/Checkmarx/containers-images-extractor v1.0.10/go.mod h1:KqOq3DUekL9VbklOVgTdZJC/+KLOYdfEoCSY/SWHdxU= -github.com/Checkmarx/containers-syft-packages-extractor v1.0.14 h1:wh+VBe3wZrN4qwxw3OV3tO6UVa6Tc7X6ib+RlWKNe7s= -github.com/Checkmarx/containers-syft-packages-extractor v1.0.14/go.mod h1:EFeB4//lO4KMVj9+eMg6z5jnO9F1e1T4jUoIcx0/19M= -github.com/Checkmarx/containers-types v1.0.4 h1:Sa3y7IraZeeppspV0AmqYTNoDEHqn9yZZZq895SkabM= -github.com/Checkmarx/containers-types v1.0.4/go.mod h1:KR0w8XCosq3+6jRCfQrH7i//Nj2u11qaUJM62CREFZA= +github.com/Checkmarx/containers-images-extractor v1.0.16 h1:Uo69VEcPe1Puy47JeRn902xN+e+nFmmFAcHlbdQeqy8= +github.com/Checkmarx/containers-images-extractor v1.0.16/go.mod h1:hRXOiq6Vw2QiIuxIqV+6+osMk0vvIpoMdTMLyz9OfE8= +github.com/Checkmarx/containers-syft-packages-extractor v1.0.15 h1:yM7Plt86oL47Kijr1fwsrWwuACNTwWgxZSZ/lifXTlk= +github.com/Checkmarx/containers-syft-packages-extractor v1.0.15/go.mod h1:Jr3dQVFslMCJ+8orsF1orFn05cO3mprUy5b43yn0IIM= +github.com/Checkmarx/containers-types v1.0.9 h1:LbHDj9LZ0x3f28wDx398WC19sw0U0EfEewHMLStBwvs= +github.com/Checkmarx/containers-types v1.0.9/go.mod h1:KR0w8XCosq3+6jRCfQrH7i//Nj2u11qaUJM62CREFZA= github.com/CycloneDX/cyclonedx-go v0.9.2 h1:688QHn2X/5nRezKe2ueIVCt+NRqf7fl3AVQk+vaFcIo= github.com/CycloneDX/cyclonedx-go v0.9.2/go.mod h1:vcK6pKgO1WanCdd61qx4bFnSsDJQ6SbM2ZuMIgq86Jg= github.com/DATA-DOG/go-sqlmock v1.5.2 h1:OcvFkGmslmlZibjAjaHm3L//6LiuBgolP7OputlJIzU= From 4051bf18f6779c0e7e7a7e110ec45b2611ed5495 Mon Sep 17 00:00:00 2001 From: Dima R <90623914+cx-dmitri-rivin@users.noreply.github.com> Date: Tue, 22 Jul 2025 14:46:48 +0300 Subject: [PATCH 2/2] test fixed --- .../containerScanner_test.go | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/pkg/containerResolver/containerScanner_test.go b/pkg/containerResolver/containerScanner_test.go index 26da2cb..893145c 100644 --- a/pkg/containerResolver/containerScanner_test.go +++ b/pkg/containerResolver/containerScanner_test.go @@ -21,8 +21,8 @@ type MockImagesExtractor struct { mock.Mock } -func (m *MockImagesExtractor) ExtractFiles(scanPath string) (types.FileImages, map[string]map[string]string, string, error) { - args := m.Called(scanPath) +func (m *MockImagesExtractor) ExtractFiles(scanPath string, isFullHelmDirectory ...bool) (types.FileImages, map[string]map[string]string, string, error) { + args := m.Called(scanPath, isFullHelmDirectory) return args.Get(0).(types.FileImages), args.Get(1).(map[string]map[string]string), args.String(2), args.Error(3) } @@ -31,6 +31,11 @@ func (m *MockImagesExtractor) ExtractAndMergeImagesFromFiles(files types.FileIma return args.Get(0).([]types.ImageModel), args.Error(1) } +func (m *MockImagesExtractor) ExtractAndMergeImagesFromFilesWithLineInfo(files types.FileImages, images []types.ImageModel, settingsFiles map[string]map[string]string) ([]types.ImageModel, error) { + args := m.Called(files, images, settingsFiles) + return args.Get(0).([]types.ImageModel), args.Error(1) +} + func (m *MockImagesExtractor) SaveObjectToFile(folderPath string, obj interface{}) error { return m.Called(folderPath, obj).Error(0) } @@ -128,7 +133,7 @@ func TestResolve(t *testing.T) { checkmarxPath := filepath.Join(resolutionFolderPath, ".checkmarx", "containers") createTestFolder(checkmarxPath) - mockImagesExtractor.On("ExtractFiles", scanPath). + mockImagesExtractor.On("ExtractFiles", scanPath, mock.Anything). Return(sampleFileImages, map[string]map[string]string{"settings.json": {"key": "value"}}, "/output/path", nil) mockImagesExtractor.On("ExtractAndMergeImagesFromFiles", sampleFileImages, @@ -141,7 +146,7 @@ func TestResolve(t *testing.T) { err := resolver.Resolve(scanPath, resolutionFolderPath, images, true) assert.NoError(t, err) - mockImagesExtractor.AssertCalled(t, "ExtractFiles", scanPath) + mockImagesExtractor.AssertCalled(t, "ExtractFiles", scanPath, mock.Anything) mockImagesExtractor.AssertCalled(t, "ExtractAndMergeImagesFromFiles", sampleFileImages, mock.Anything, mock.Anything) mockSyftPackagesExtractor.AssertCalled(t, "AnalyzeImagesWithPlatform", mock.Anything, "linux/amd64") mockImagesExtractor.AssertCalled(t, "SaveObjectToFile", checkmarxPath, expectedResolution) @@ -163,14 +168,14 @@ func TestResolve(t *testing.T) { checkmarxPath := filepath.Join(resolutionFolderPath, ".checkmarx", "containers") createTestFolder(checkmarxPath) - mockImagesExtractor.On("ExtractFiles", scanPath). + mockImagesExtractor.On("ExtractFiles", scanPath, mock.Anything). Return(sampleFileImages, map[string]map[string]string{"settings.json": {"key": "value"}}, "/output/path", errors.New("invalid path")) err := resolver.Resolve(scanPath, resolutionFolderPath, images, false) assert.Error(t, err) assert.Equal(t, "invalid path", err.Error()) - mockImagesExtractor.AssertCalled(t, "ExtractFiles", scanPath) + mockImagesExtractor.AssertCalled(t, "ExtractFiles", scanPath, mock.Anything) }) t.Run("Error in AnalyzeImages", func(t *testing.T) { @@ -182,7 +187,7 @@ func TestResolve(t *testing.T) { checkmarxPath := filepath.Join(resolutionFolderPath, ".checkmarx", "containers") createTestFolder(checkmarxPath) - mockImagesExtractor.On("ExtractFiles", scanPath). + mockImagesExtractor.On("ExtractFiles", scanPath, mock.Anything). Return(sampleFileImages, map[string]map[string]string{"settings.json": {"key": "value"}}, "/output/path", nil) mockImagesExtractor.On("ExtractAndMergeImagesFromFiles", sampleFileImages, types.ToImageModels(images),