dav*_*419 6 node.js express sinon
尽管有关于此的文章,但我无法在使用函数之前,之后和恢复对象之前对其进行修复。发布以下代码:-
var Log = sinon.stub(hello, 'someEvent', function(type, name){
var obj = {};
obj.addData = function(data){
return;
};
obj.complete = function(){
return;
}
return obj;
}),
someVar = sinon.stub(servicecore, 'some'),
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:-
Attempted to wrap someEvent which is already wrapped.
Run Code Online (Sandbox Code Playgroud)
和
Attempted to wrap some which is already wrapped.
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?
在下面编辑
我甚至按照建议的方式尝试了之前和之后的功能:-
var Log,someVar;
before(function(){
Log = sinon.stub(hello, 'someEvent', function(type, name){
var obj = {};
obj.addData = function(data){
return;
};
obj.complete = function(){
return;
}
return obj;
});
someVar = sinon.stub(servicecore, 'some');
});
after(function(){
Log.restore();
someVar.restore();
});
Run Code Online (Sandbox Code Playgroud)
即使使用beforeEach和afterEach函数,也尝试过相同的错误。
来自sinon 文档:
var Stub = sinon.stub(对象, "方法"); 用存根函数替换 object.method。可以通过调用object.method.restore()来恢复原来的功能;(或存根.restore();)。如果属性还不是函数,则会引发异常,以帮助避免存根方法时出现拼写错误。
通常在测试完成后使用 after 或 afterEach 挂钩恢复存根。
after(function() {
// runs before all tests in this block
someVar.restore();
});
afterEach(function() {
// runs before each test in this block
someVar.restore();
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3591 次 |
| 最近记录: |