[英]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.