0
我需要調用expect().to.throw()
上的一個帶參數的函數。例如,假設我有以下幾點:node:使用chai的expect.to.throw在一個帶參數的函數上
var func = function(x) {
if (x > 1) {
throw new Error()
} else {
console.log('hello')
}
}
expect(func).to.throw()
這失敗,因爲它要求func
不帶參數,這意味着它不會拋出一個錯誤。但如果我撥打expect(func(2)).to.throw()
,我會得到AssertionError: expected undefined to be a function
。該函數被調用並且返回值被傳遞給expect
。
如何使用expect().to.throw()
並給出包含的函數參數。是唯一的方法來做到這一點與匿名功能,如expect(() => {func(2)}).to.throw()
?
'bind()的'也是一個不錯的選擇:'希望(fn.bind(NULL,42))to.throw()' –