[英]How to mock functions of a function?
我在我的脚本中使用simple-git
,如下所示:
import simpleGit from 'simple-git'
const git = simpleGit()
const foo = async (): Promise<void> => {
const tags: string = await git.tag({
'--list': null,
'--format': '%(objectname:short)'
})
}
在我的测试中,我需要模拟 git 调用,我是这样做的:
jest.mock('simple-git', () => ({
tag: () => jest.fn()
}))
但这是失败的。 我想,我必须照顾const git = simpleGit()
如果simple-git
是通过node_module
安装的(我假设是这样),您只需要在项目的根目录下创建一个名为__mocks__
的目录,在您需要创建一个名为simple-git.js
的文件的情况下,放置在那里的任何内容都会自动simple-git.js
.
├── __mocks__
│ └── simple-git.js
├── node_modules
参考: https : //jestjs.io/docs/manual-mocks#mocking-node-modules
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.