eli*_*00d 5 javascript mocha.js sinon ecmascript-6
根据这个答案,我找到了一种模拟命名导出的好方法:/sf/answers/2688987591/
代码测试.js:
import {someMethod} from './someNamedExports'
export default () => someMethod()
Run Code Online (Sandbox Code Playgroud)
codeToTestSpec.js:
import * as someNamedExports from './someNamedExports'
import codeToTest from './codeToTest
sinon.stub(someNamedExports, 'someMethod')
codeToTest()
someNamedExports.someMethod.should.have.been.called
someNamedExports.someMethod.restore()
Run Code Online (Sandbox Code Playgroud)
这按预期工作。
但是,我似乎遇到了默认导出的问题。这是我尝试过的:
代码测试.js:
import someDefaultExport from './someDefaultExport
export default () => someDefaultExport()
Run Code Online (Sandbox Code Playgroud)
codeToTestSpec.js:
import * as someDefaultExport from './someDefaultExport'
import codeToTest from './codeToTest
sinon.stub(someDefaultExport, 'default')
codeToTest()
someDefaultExport.default.should.have.been.called
someDefaultExport.default.restore()
Run Code Online (Sandbox Code Playgroud)
它似乎没有按预期进行存根,并抱怨尝试恢复时未定义 someDefaultExport.default 。
我错过了什么还是这可能是 sinon 的错误?
| 归档时间: |
|
| 查看次数: |
1807 次 |
| 最近记录: |