2011-07-18 73 views
0

我有以下茉莉花背景和斷言:嵌套期待()函數不計算

it "should return a javascript file", -> 
    # We make a request to /x.js 
    request {uri: 'http://localhost:3000/x.js'}, (err, res, body) -> 
    expect(res.statusCode).toEqual 200 

當我打電話茉莉花評估規範,它不皮卡斷言。我怎樣才能使它接受斷言?

回答

1

在您的請求返回響應之前,您的it()正在退出。用茉莉花,你必須考慮異步事件有點困難。

檢出waitsFor()並執行此類操作,這將阻止您的規範在執行回調之前退出,或者默認的超時期限已過。

it "should return a javascript file", -> 
    responded = no 
    request {uri: 'http://localhost:3000/x.js'}, (err, res, body) -> 
    responded = yes 
    expect(res.statusCode).toEqual 200 

    waitsFor -> responded 

這也將導致如果服務器超時,因爲每個waitsFor()預計將滿足您的最終規格失敗。