@@ -31,6 +31,16 @@ describe('snyk test for python project', () => {
31
31
jest . restoreAllMocks ( ) ;
32
32
} ) ;
33
33
34
+ const mockFeatureFlagResponseFn = ( ) => {
35
+ return Promise . resolve ( {
36
+ res : { statusCode : 200 } as NeedleResponse ,
37
+ body : {
38
+ code : 200 ,
39
+ ok : true ,
40
+ } ,
41
+ } ) ;
42
+ }
43
+
34
44
describe ( 'no flag is used' , ( ) => {
35
45
describe ( 'project contains pyproject.toml file' , ( ) => {
36
46
it ( 'should scan poetry vulnerabilities' , async ( ) => {
@@ -49,16 +59,10 @@ describe('snyk test for python project', () => {
49
59
} ,
50
60
} ;
51
61
52
- // this is for 'enablePnpmCli' feature flag
53
- mockedMakeRequest . mockImplementationOnce ( ( ) => {
54
- return Promise . resolve ( {
55
- res : { statusCode : 200 } as NeedleResponse ,
56
- body : {
57
- code : 200 ,
58
- ok : false ,
59
- } ,
60
- } ) ;
61
- } ) ;
62
+ // this is for 'enablePnpmCli' and 'enableAdvancedPackageManagerDetection' feature flags
63
+ mockedMakeRequest . mockImplementationOnce ( mockFeatureFlagResponseFn ) ;
64
+ mockedMakeRequest . mockImplementationOnce ( mockFeatureFlagResponseFn ) ;
65
+
62
66
mockedLoadPlugin . mockImplementationOnce ( ( ) => {
63
67
return plugin ;
64
68
} ) ;
@@ -82,7 +86,7 @@ describe('snyk test for python project', () => {
82
86
expect ( mockedLoadPlugin ) . toHaveBeenCalledTimes ( 1 ) ;
83
87
expect ( mockedLoadPlugin ) . toHaveBeenCalledWith ( 'poetry' ) ;
84
88
85
- expect ( mockedMakeRequest ) . toHaveBeenCalledTimes ( 2 ) ;
89
+ expect ( mockedMakeRequest ) . toHaveBeenCalledTimes ( 3 ) ;
86
90
expect ( mockedMakeRequest ) . toHaveBeenCalledWith (
87
91
expect . objectContaining ( {
88
92
body : expect . objectContaining ( {
@@ -136,16 +140,10 @@ describe('snyk test for python project', () => {
136
140
} ,
137
141
} ;
138
142
139
- // this is for 'enablePnpmCli' feature flag
140
- mockedMakeRequest . mockImplementationOnce ( ( ) => {
141
- return Promise . resolve ( {
142
- res : { statusCode : 200 } as NeedleResponse ,
143
- body : {
144
- code : 200 ,
145
- ok : false ,
146
- } ,
147
- } ) ;
148
- } ) ;
143
+ // this is for 'enablePnpmCli' and 'enableAdvancedPackageManagerDetection' feature flags
144
+ mockedMakeRequest . mockImplementationOnce ( mockFeatureFlagResponseFn ) ;
145
+ mockedMakeRequest . mockImplementationOnce ( mockFeatureFlagResponseFn ) ;
146
+
149
147
mockedLoadPlugin . mockImplementationOnce ( ( ) => {
150
148
return plugin ;
151
149
} ) ;
@@ -169,7 +167,7 @@ describe('snyk test for python project', () => {
169
167
expect ( mockedLoadPlugin ) . toHaveBeenCalledTimes ( 1 ) ;
170
168
expect ( mockedLoadPlugin ) . toHaveBeenCalledWith ( 'poetry' ) ;
171
169
172
- expect ( mockedMakeRequest ) . toHaveBeenCalledTimes ( 2 ) ;
170
+ expect ( mockedMakeRequest ) . toHaveBeenCalledTimes ( 3 ) ;
173
171
expect ( mockedMakeRequest ) . toHaveBeenCalledWith (
174
172
expect . objectContaining ( {
175
173
body : expect . objectContaining ( {
@@ -227,16 +225,10 @@ describe('snyk test for python project', () => {
227
225
} ,
228
226
} ;
229
227
230
- // this is for 'enablePnpmCli' feature flag
231
- mockedMakeRequest . mockImplementationOnce ( ( ) => {
232
- return Promise . resolve ( {
233
- res : { statusCode : 200 } as NeedleResponse ,
234
- body : {
235
- code : 200 ,
236
- ok : false ,
237
- } ,
238
- } ) ;
239
- } ) ;
228
+ // this is for 'enablePnpmCli' and 'enableAdvancedPackageManagerDetection' feature flags
229
+ mockedMakeRequest . mockImplementationOnce ( mockFeatureFlagResponseFn ) ;
230
+ mockedMakeRequest . mockImplementationOnce ( mockFeatureFlagResponseFn ) ;
231
+
240
232
mockedLoadPlugin . mockImplementationOnce ( ( ) => {
241
233
return plugin ;
242
234
} ) ;
@@ -261,7 +253,7 @@ describe('snyk test for python project', () => {
261
253
expect ( mockedLoadPlugin ) . toHaveBeenCalledTimes ( 1 ) ;
262
254
expect ( mockedLoadPlugin ) . toHaveBeenCalledWith ( 'pip' ) ;
263
255
264
- expect ( mockedMakeRequest ) . toHaveBeenCalledTimes ( 2 ) ;
256
+ expect ( mockedMakeRequest ) . toHaveBeenCalledTimes ( 3 ) ;
265
257
expect ( mockedMakeRequest ) . toHaveBeenCalledWith (
266
258
expect . objectContaining ( {
267
259
body : expect . objectContaining ( {
@@ -329,16 +321,10 @@ describe('snyk test for python project', () => {
329
321
} ,
330
322
} ;
331
323
332
- // this is for 'enablePnpmCli' feature flag
333
- mockedMakeRequest . mockImplementationOnce ( ( ) => {
334
- return Promise . resolve ( {
335
- res : { statusCode : 200 } as NeedleResponse ,
336
- body : {
337
- code : 200 ,
338
- ok : false ,
339
- } ,
340
- } ) ;
341
- } ) ;
324
+ // this is for 'enablePnpmCli' and 'enableAdvancedPackageManagerDetection' feature flags
325
+ mockedMakeRequest . mockImplementationOnce ( mockFeatureFlagResponseFn ) ;
326
+ mockedMakeRequest . mockImplementationOnce ( mockFeatureFlagResponseFn ) ;
327
+
342
328
mockedLoadPlugin
343
329
. mockImplementationOnce ( ( ) => pipfilePythonPluginResponse )
344
330
. mockImplementationOnce ( ( ) => pyprojectPythonPluginResponse ) ;
@@ -364,7 +350,7 @@ describe('snyk test for python project', () => {
364
350
expect ( mockedLoadPlugin ) . toHaveBeenCalledWith ( 'pip' ) ;
365
351
expect ( mockedLoadPlugin ) . toHaveBeenCalledWith ( 'poetry' ) ;
366
352
367
- expect ( mockedMakeRequest ) . toHaveBeenCalledTimes ( 3 ) ;
353
+ expect ( mockedMakeRequest ) . toHaveBeenCalledTimes ( 4 ) ;
368
354
expect ( mockedMakeRequest ) . toHaveBeenCalledWith (
369
355
expect . objectContaining ( {
370
356
body : expect . objectContaining ( {
0 commit comments