У меня есть функция, которую я хотел бы проверить, которая дважды вызывает метод внешнего API, используя разные параметры. Я хотел бы издеваться над внешним API с помощью шпионского жасмина и возвращать разные вещи в зависимости от параметров. Есть ли способ сделать это в Жасмин? Лучшее, что я могу придумать, это взломать с помощью andCallFake:
var functionToTest = function() {
var userName = externalApi.get('abc');
var userId = externalApi.get('123');
};
describe('my fn', function() {
it('gets user name and ID', function() {
spyOn(externalApi, 'get').andCallFake(function(myParam) {
if (myParam == 'abc') {
return 'Jane';
} else if (myParam == '123') {
return 98765;
}
});
});
});
and.callFake
- jasmine.github.io/2.2/… >