我正在尝试验证一个咖啡脚本构造函数抛出了一个异常(使用sinon和sinon-chai)。
class Animal
constructor: ->
throw "exception"
class Dog extends Animal如何正确创建间谍来验证实例化Dog抛出异常?
发布于 2012-12-19 05:21:02
只需使用匿名函数在内部创建对象,就可以将其传递给expects。到目前为止,不需要任何sinon。
expect(-> new Animal()).to.throw(/message/)注意,如果抛出一个简单的字符串,chai的throw中的正则表达式总是会通过。它只有在抛出错误对象的情况下才能正常工作。无论如何,抛出真正的错误总是更好。
class Animal
constructor: ->
throw new Error('message') # only this will assert the regexp above希望这能有所帮助。
https://stackoverflow.com/questions/13519999
复制相似问题