0
私は1つのジャスミンテストスイートで2つの非同期呼び出しをしようとしています。 2番目のコールは、最初のコールが終了してからコールするまで待機する必要があります。 だから、簡単なセットアップ:ジャスミン1.3でいくつかの非同期呼び出し
it('async tests', function(){
runs(function() {
flagToServer = false;
flagFromServer = false;
value1 = 0;
value2 = 0;
dataToGet = "";
dataToSend = "";
setTimeout(function() {
flagFromServer = true;
data = getDataFromServer();
}, 500);
});
waitsFor(function() {
value1++;
return flag;
}, "The Value should be incremented", 750);
runs(function() {
expect(value1).toBeGreaterThan(0);
expect(data).toBe(expectedData);
});
//second async call to server;
runs(function() {
dataToSend = manipulate(dataToGet);
setTimeout(function() {
sendDataToServer(dataToSend);
flagToServer = true;
}, 500);
});
waitsFor(function() {
value2++;
return flagToServer;
});
runs(function() {
expect(value2).toBeGreaterThan(0);
expect(eventFromServer).toBe('got data');
});
});
は、それが上記の何かをすることは可能ですか?私はいくつかのwaitsFor/runsブロックが一緒に使用される使用法を見つけることができませんでした。次々にいくつかの非同期呼び出しをテストするのが正しい方法ですか?