File tree 2 files changed +30
-2
lines changed
2 files changed +30
-2
lines changed Original file line number Diff line number Diff line change @@ -117,18 +117,24 @@ module.exports = class Node {
117
117
}
118
118
}
119
119
120
- startDaemon ( done ) {
120
+ startDaemon ( flags , done ) {
121
+ if ( typeof ( flags ) === 'function' && typeof ( done ) === 'undefined' ) {
122
+ done = flags
123
+ flags = [ ]
124
+ }
125
+
121
126
const node = this
122
127
parseConfig ( node . path , ( err , conf ) => {
123
128
if ( err ) return done ( err )
124
129
125
130
let stdout = ""
131
+ let args = [ 'daemon' ] . concat ( flags || [ ] )
126
132
127
133
// strategy:
128
134
// - run subprocess
129
135
// - listen for API addr on stdout (success)
130
136
// - or an early exit or error (failure)
131
- node . subprocess = run ( node . exec , [ 'daemon' ] , { env : node . env } )
137
+ node . subprocess = run ( node . exec , args , { env : node . env } )
132
138
node . subprocess . on ( 'error' , onErr )
133
139
. on ( 'data' , onData )
134
140
Original file line number Diff line number Diff line change @@ -369,3 +369,25 @@ describe('ipfs-api version', function () {
369
369
} )
370
370
} )
371
371
} )
372
+
373
+ describe ( 'node startDaemon' , ( ) => {
374
+ it ( 'allows passing flags' , ( done ) => {
375
+ ipfsd . disposable ( ( err , node ) => {
376
+ if ( err ) throw err
377
+ node . startDaemon ( [ "--should-not-exist" ] , ( err , ignore ) => {
378
+ if ( ! err ) {
379
+ throw new Error ( "should have errored" )
380
+ }
381
+
382
+ let errStr = "Unrecognized option 'should-not-exist'"
383
+
384
+ err = "" + err
385
+ if ( err . indexOf ( errStr ) >= 0 ) {
386
+ done ( ) // correct error
387
+ }
388
+
389
+ throw err
390
+ } )
391
+ } )
392
+ } )
393
+ } )
You can’t perform that action at this time.
0 commit comments