Я создал функцию, поэтому при изменении маршрута:Жасмин SpyOn Окно Функция в AngularJS Применение
window.intercom = function(action, msg) {
return window.Intercom(action, msg);
};
Am пытается подсмотреть эту функцию, но не понимаю, как. Я последовал совету в this SO post.
Если я использую это:
beforeEach(inject(function($compile, $rootScope, $q, _$location_, $routeParams) {
element = angular.element("<add-box></add-box>");
$compile(element)($rootScope);
}));
it("should cancel adding a box!", function() {
spyOn(window, 'intercom')
});
Я получаю сообщение об ошибке:
intercom() method does not exist
Так что я попытался это:
it("should cancel adding a box!", function() {
var intercom = jasmine.createSpy();
});
Который говорит:
TypeError: 'undefined' is not a function (evaluating 'window.intercom('hide')')
Как я могу заставить это работать? Я уверен, что это просто, я просто новичок в Жасмине.
Дополнительный контекст пожалуйста. Отправьте фактический тестовый код. –
@RobertMoskal Не так много в тестах на данный момент, поскольку я просто пытался заставить их работать. Сделали некоторые изменения. – simonmorley