[英]Mocha before function - lambda without curly braces errors; lambda with curly braces works
此代碼使我的摩卡測試順利通過,沒有錯誤:
before(done => {
mockgoose
.prepareStorage()
.then(() => mongoose.connect('mongodb://example.com/TestingDB'))
.then(done)
})
it('passes', done => done())
但是,刪除before
塊中的花括號會導致錯誤:
before(done =>
mockgoose
.prepareStorage()
.then(() => mongoose.connect('mongodb://example.com/TestingDB'))
.then(done)
)
it('passes', done => done())
1) "before all" hook
0 passing (2s)
1 failing
1) "before all" hook:
Error: Resolution method is overspecified. Specify a callback *or* return a Promise; not both.
at process._tickCallback (internal/process/next_tick.js:109:7)
有人知道為什么嗎? 如果需要更多上下文,我可以提出。
它說的就在那兒,您之前沒有返回任何東西,只是在使用done
來指定任務完成的時間。 現在,您將返回一個Promise
(我認為是模擬狗調用的結果),它使摩卡混亂。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.