4
想測試一個承諾基礎服務,它確實是這樣的:
load : function(){
var deferred = $q.defer();
//Do misc async stuff
deferred.resolve();
return deferred.promise;
}
當試圖測試這個因果報應+茉莉花2.0我嘗試使用它的有()回調,但它總是超時,永遠不會解決承諾。
beforeEach(inject(function ($injector) {
service = $injector.get('myService');
$window = $injector.get("$window");
$rootScope = $injector.get('$rootScope');
}));
describe('Call load', function() {
it('resolves its promise', function (done) {
service.load().then(function(){
expect(something).not.toBe(undefined);
done();
});
});
});
從茉莉文檔這是怎麼了我,雖然你應該使用()完成與異步代碼一起,但似乎問題是,承諾從未解決
$範圍$適用()應該解決的承諾 –
感謝@TimCastelijns。你應該做出答案。 –
謝謝@TimCastlijns,我同意他人你應該用一個解釋做出答案。單元測試中未解決的承諾問題讓我很困惑。 –