使用typescript的Sinon.test这是空对象

时间:2017-02-07 04:24:06

标签: typescript sinon

我试图在打字稿项目中使用sinon并尝试使用其沙盒功能。我已将测试包装在建议的庄园中,我试图按照文档调用this.stub(/stuff/)

不幸的是,当我这样做时,我收到以下错误TypeError: this.stub is not a function。作为测试,我在存根之前将this打印到控制台,它是一个空对象。

以下是我尝试编写的测试失败的示例。我们非常感谢有关为使沙盒功能正常工作而需要进行更改的任何建议。

import * as sinon from 'sinon'
import * as fs from 'fs'
describe("test",()=>
  it("raise error notification if location does not exist", sinon.test(()=>{
      this.stub(fs,"existsSync",(location: string)=> false)
      /* rest of test */
  }))
})

不使用沙箱功能并手动恢复存根确实可供参考。如果可能,尝试限制测试中的手动清理。

1 个答案:

答案 0 :(得分:0)

今天早上找到了答案,对于那些也找到这篇文章的人来说。

问题在于您不能使用新的ES2015箭头样式函数声明来使用sinon.test访问正确的范围。它来自2.0文档,但原因仍然转换为1.0分支

https://github.com/sinonjs/sinon-test/blob/master/README.md#usage