@@ -7,7 +7,8 @@ const chai = require("chai"),
7
7
cp = require ( 'child_process' ) ;
8
8
9
9
const logger = require ( "../../../../bin/helpers/logger" ) . winstonLogger ,
10
- fileHelpers = require ( "../../../../bin/helpers/fileHelpers" ) ;
10
+ fileHelpers = require ( "../../../../bin/helpers/fileHelpers" ) ,
11
+ utils = require ( '../../../../bin/helpers/utils' ) ;
11
12
12
13
const rewire = require ( "rewire" ) ;
13
14
@@ -214,15 +215,47 @@ describe("packageInstaller", () => {
214
215
context ( "packageInstall" , ( ) => {
215
216
const packageInstaller = rewire ( "../../../../bin/helpers/packageInstaller" ) ;
216
217
217
- it ( "should call npm install on directory and resolve if spawn is closed successfully" , ( ) => {
218
+ it ( "should call npm install on directory with npm <= 6 and resolve if spawn is closed successfully" , ( ) => {
218
219
let spawnStub = sandbox . stub ( cp , 'spawn' ) . returns ( {
219
220
on : ( _close , nodeProcessCloseCallback ) => {
220
221
nodeProcessCloseCallback ( 0 ) ;
221
222
}
222
223
} ) ;
224
+ let getMajorVersionStub = sandbox . stub ( utils , 'getMajorVersion' ) . returns ( '7' ) ;
223
225
packageInstaller . __set__ ( {
224
226
nodeProcess : { } ,
225
- spawn : spawnStub
227
+ spawn : spawnStub ,
228
+ utils : {
229
+ getMajorVersion : getMajorVersionStub
230
+ }
231
+ } ) ;
232
+ let packageInstallrewire = packageInstaller . __get__ ( 'packageInstall' ) ;
233
+ let directoryPath = "/random/path" ;
234
+ return packageInstallrewire ( directoryPath )
235
+ . then ( ( data ) => {
236
+ console . log ( data ) ;
237
+ chai . assert . equal ( data , "Packages were installed successfully." )
238
+ spawnStub . restore ( ) ;
239
+ getMajorVersionStub . restore ( ) ;
240
+ } )
241
+ . catch ( ( _error ) => {
242
+ chai . assert . fail ( `Promise error ${ _error } ` ) ;
243
+ } ) ;
244
+ } ) ;
245
+
246
+ it ( "should call npm install on directory with npm >= 7 and resolve if spawn is closed successfully" , ( ) => {
247
+ let spawnStub = sandbox . stub ( cp , 'spawn' ) . returns ( {
248
+ on : ( _close , nodeProcessCloseCallback ) => {
249
+ nodeProcessCloseCallback ( 0 ) ;
250
+ }
251
+ } ) ;
252
+ let getMajorVersionStub = sandbox . stub ( utils , 'getMajorVersion' ) . returns ( '7' ) ;
253
+ packageInstaller . __set__ ( {
254
+ nodeProcess : { } ,
255
+ spawn : spawnStub ,
256
+ utils : {
257
+ getMajorVersion : getMajorVersionStub
258
+ }
226
259
} ) ;
227
260
let packageInstallrewire = packageInstaller . __get__ ( 'packageInstall' ) ;
228
261
let directoryPath = "/random/path" ;
@@ -231,6 +264,7 @@ describe("packageInstaller", () => {
231
264
console . log ( data ) ;
232
265
chai . assert . equal ( data , "Packages were installed successfully." )
233
266
spawnStub . restore ( ) ;
267
+ getMajorVersionStub . restore ( ) ;
234
268
} )
235
269
. catch ( ( _error ) => {
236
270
chai . assert . fail ( `Promise error ${ _error } ` ) ;
0 commit comments