Я вызываю метод внешнего API для метода post, но я не могу охватить его с помощью jasmine.
Я уже смоделировал функцию внешнего API с помощью объекта window и создал функциювысмеивать обратный вызов, возвращая какой-то объект.Но ничего не помогает.
Javascript
function loadApi() {
extAPI.load({
email: 'testEmail.test.com'
}, function(resultObject) {
if(resultObject.approved) {
// callback with result object - not able to cover this
}
});
}
Spec.js & Макеты
beforeEach(function() {
function mockLoadCallback() {
var object = {
approved: false
};
return object;
}
widnow.extAPI = {
load: function(object, Function) {
var deferred = $.Deferred();
deferred.resolve(mockLoadCallback);
return deferred.promise();
}
}
});
it('load the external API response', function() {
var loadSpy = spyOn(extAPI, 'load');
loadApi();
expect(loadSpy).toHaveBeenCalled();
});
заявления иЛогика в обратном вызове нагрузки должна быть покрыта, но даже не вызывать после шпиона.что я тут делаю не так.