我需要模拟“mkdirp-promise”节点模块,它公开了一个构造函数,如下所示
mkdirpPromise(dirPath)
.then(() => {
console.log('ABCDEFGH');
resolve(dirPath);
})
.catch((error) => {
console.log('HeABCDEFGHre');
const details = error.message;
const err = customError.failed_create_downloads_directory()
.withDetails(details);
reject(err);
});我第一次能够使用proxiquire模拟它:
let mkdirpPromiseMock = sinon.stub().rejects();
const sthreeDownloadMock =
proxyquire('./../../modules/sThreeDownload', {
joi: joiMock,
fs: fsMock,
'@monotype/core-error': {
errors: {
ApiError: customErrorMock,
},
},
'aws-sdk': awsSDK,
'mkdirp-promise': mkdirpPromiseMock,
path: pathMock,
});现在我想用覆盖第二个测试用例中的mkdirpPromiseMock
mkdirpPromiseMock = sinon.stub().resolves();但我做不到。任何帮助都是非常感谢的。
发布于 2019-09-21 04:52:07
https://stackoverflow.com/questions/49014050
复制相似问题