I have a function that uses the exported method execFile
from child_process
package.
I want to test my function. In order to test it, I need to stub the execFile
, so it will return only after 5 seconds.
Something like this:
const statStub = sinon.stub(child_process, 'execFile').callsFake((
file: string,
args: ReadonlyArray<string> | undefined | null,
options: ({ encoding?: string | null } & ExecFileOptions) | undefined | null,
callback: ((error: ExecException | null, stdout: string | Buffer, stderr: string | Buffer) => void) | undefined | null,
) => {
sleepSomehow(5);
return execFile(file, args, options, callback);
})
I am not sure that's the correct way, and furthermore I can't really implement this sleepSomehow
function.
So how do I stub execFile
to just stall 5 seconds?