У меня есть этот фрагмент кода в AngularJS, который я пытаюсь проверить:
var _savePendingChanges = function() {
try {
$rootScope.$broadcast('externalSave');
} catch (e) {
// Sometimes, AngularJS throws a "Cannot read property $$nextSibling of
// null" error. To get around this we must use $apply().
$rootScope.$apply(function() {
$rootScope.$broadcast('externalSave');
});
}
}
Вот тест, который я написал до сих пор, и он не работает (он выдает ошибка от errorMessage
и ошибка Жасмин: Error: Expected function to throw an Error.
):
fit('should save pending changes', function() {
var errorMessage = 'Cannot read property $$nextSibling of null';
spyOn($rootScope, '$broadcast').and.throwError(errorMessage);
expect(function() {
RouterService.savePendingChanges();
}).toThrowError(errorMessage);
});
Кто-нибудь может мне помочь? Спасибо!