インターンで非同期コールバックを呼び出す必要がある状況を指定することは可能ですか? いくつかの XHR リクエストを連続して実行するメソッドをテストするテストがあるとします。具体的には、Strophe.connect に提供されるコールバックの実装をテストしようとしています。そのように機能し、最初の XMPP (BOSH) ハンドシェイクを処理するサーバーにいくつかの XHR 要求を送信します。
5 秒でコールバックがステータス コード 5 (接続済み) で呼び出されることをテストすることは可能ですか? 問題は、コールバックが複数回トリガーされ、正しいステータス コードを待って、他のコードを破棄する必要があることです。
var dfd = this.async(5000);
conn.connection.connect("jid", "pass", dfd.callback(function(status) {
if(status === 5) {
expect(status).to.have(something);
} else {
// here, I need to say intern to
// do nothing, just let the callback
// to be triggered once more
}
return true;
}));