[英]Error in writing asynchronous Vows.js Tests
我一直在使用節點並使用誓言來編寫測試。
var vows = require('vows');
var assert = require('assert');
var boardData = require('../lib/data/BoardData.js');
vows.describe('Loading provinces and Boundries for').addBatch({
'version': {
'2008E5-1':{
topic: function () { boardData.createBoard("2008E5",this.callback); },
'exists': function (err,provs,bounds) { assert.ok(true); }
}/*,
'2008E5-2': {
topic: function () { boardData.createBoard("2008E5",this.callback); },
'exists': function (err,provs,bounds) { assert.ok(true); }
}*/
}
}).export(module);
當我運行此代碼時,我得到了預期的結果。 當我取消注釋注釋部分時,注意到兩個已成功完成,但是可以通過放置console.log(“foo”)來發現第二個是第二個。 在適當的位置。
·· ✓ OK » 2 honored (0.067s)
·
✗ Errored » callback not fired
in version 2008E5-1
in Loading provinces and Boundries for
in undefined
這一定是我缺少某些東西或缺乏對某些東西的理解,但我無法弄明白。 誰能幫我? 提前致謝!
boardData.createBoard包含其他是異步調用,顯然是不允許的(應該在設置中完成?)。 沒有證據,只是實驗。
我擔心“版本”鍵沒有主題。 我認為它需要一個自己的主題。 如果需要,您可以在其下嵌套子主題。
或者,使用--spec
選項運行它以查看正在運行的測試。
vows --spec
要么
./node_modules/vows/bin/vows --spec
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.