恢复沙箱中的单个存根

时间:2016-11-23 10:11:40

标签: javascript sinon

sandbox = sinon.sandbox.create();

sandbox.stub(db, 'query', () => {
    return Promise.resolve();
});

sandbox.stub(process, 'exit', () => { });

sandbox.restore();删除所有存根。

我想删除一个存根,以便我可以重新存根。例如query存根。

这可能吗?我找不到任何关于此的信息。

1 个答案:

答案 0 :(得分:3)

您可以像这样恢复单个方法:

db.query.restore();

针对您的具体情况。

Per sinon文档:

  

var stub = sinon.stub(object,“method”);

     

用stub函数替换object.method。如果是,则抛出异常   该物业尚未成为一个功能。

     

可以通过调用恢复原始功能   object.method.restore(); (或stub.restore();)。

请参阅http://sinonjs.org/releases/v2.3.6/stubs/