@@ -4,14 +4,16 @@ package containersResolver_test
44
55import (
66 "errors"
7- "github.com/Checkmarx/containers-resolver/pkg/containerResolver"
7+ "os"
8+ "path/filepath"
9+ "testing"
10+
11+ containersResolver "github.com/Checkmarx/containers-resolver/pkg/containerResolver"
812 "github.com/Checkmarx/containers-syft-packages-extractor/pkg/syftPackagesExtractor"
913 "github.com/Checkmarx/containers-types/types"
1014 "github.com/rs/zerolog/log"
1115 "github.com/stretchr/testify/assert"
1216 "github.com/stretchr/testify/mock"
13- "os"
14- "testing"
1517)
1618
1719// Mock for ImagesExtractorInterface
@@ -92,7 +94,7 @@ func TestResolve(t *testing.T) {
9294 expectedResolution := []* syftPackagesExtractor.ContainerResolution {
9395 {
9496 ContainerImage : syftPackagesExtractor.ContainerImage {
95- ImageName : "image1" ,
97+ ImageName : "image1:blabla " ,
9698 ImageTag : "latest" ,
9799 Distribution : "debian" ,
98100 ImageHash : "sha256:123abc" ,
@@ -118,6 +120,8 @@ func TestResolve(t *testing.T) {
118120 }
119121
120122 t .Run ("Success scenario" , func (t * testing.T ) {
123+ checkmarxPath := filepath .Join (resolutionFolderPath , ".checkmarx" , "containers" )
124+ createTestFolder (checkmarxPath )
121125
122126 mockImagesExtractor .On ("ExtractFiles" , scanPath ).
123127 Return (sampleFileImages , map [string ]map [string ]string {"settings.json" : {"key" : "value" }}, "/output/path" , nil )
@@ -127,15 +131,15 @@ func TestResolve(t *testing.T) {
127131 map [string ]map [string ]string {"settings.json" : {"key" : "value" }}).
128132 Return ([]types.ImageModel {{Name : "image1" }}, nil )
129133 mockSyftPackagesExtractor .On ("AnalyzeImages" , mock .Anything ).Return (expectedResolution , nil )
130- mockImagesExtractor .On ("SaveObjectToFile" , resolutionFolderPath , expectedResolution ).Return (nil )
134+ mockImagesExtractor .On ("SaveObjectToFile" , checkmarxPath , expectedResolution ).Return (nil )
131135
132136 err := resolver .Resolve (scanPath , resolutionFolderPath , images , true )
133137 assert .NoError (t , err )
134138
135139 mockImagesExtractor .AssertCalled (t , "ExtractFiles" , scanPath )
136140 mockImagesExtractor .AssertCalled (t , "ExtractAndMergeImagesFromFiles" , sampleFileImages , mock .Anything , mock .Anything )
137141 mockSyftPackagesExtractor .AssertCalled (t , "AnalyzeImages" , mock .Anything )
138- mockImagesExtractor .AssertCalled (t , "SaveObjectToFile" , resolutionFolderPath , expectedResolution )
142+ mockImagesExtractor .AssertCalled (t , "SaveObjectToFile" , checkmarxPath , expectedResolution )
139143 })
140144
141145 t .Run ("ScanPath Validation failure" , func (t * testing.T ) {
@@ -151,6 +155,9 @@ func TestResolve(t *testing.T) {
151155 mockImagesExtractor .ExpectedCalls = nil
152156 mockImagesExtractor .Calls = nil
153157
158+ checkmarxPath := filepath .Join (resolutionFolderPath , ".checkmarx" , "containers" )
159+ createTestFolder (checkmarxPath )
160+
154161 mockImagesExtractor .On ("ExtractFiles" , scanPath ).
155162 Return (sampleFileImages , map [string ]map [string ]string {"settings.json" : {"key" : "value" }}, "/output/path" ,
156163 errors .New ("invalid path" ))
@@ -167,6 +174,9 @@ func TestResolve(t *testing.T) {
167174 mockSyftPackagesExtractor .ExpectedCalls = nil
168175 mockSyftPackagesExtractor .Calls = nil
169176
177+ checkmarxPath := filepath .Join (resolutionFolderPath , ".checkmarx" , "containers" )
178+ createTestFolder (checkmarxPath )
179+
170180 mockImagesExtractor .On ("ExtractFiles" , scanPath ).
171181 Return (sampleFileImages , map [string ]map [string ]string {"settings.json" : {"key" : "value" }}, "/output/path" , nil )
172182
0 commit comments