Я выполнил следующую строку
expect($rootScope.$broadcast).toHaveBeenCalledWith("dateApply");
но я получил следующую ошибку:
TypeError: "undefined" не является объектом (оценивая "$.net" ("$ locationChangeStart", b, a, k. $$ state, f).defaultPrevented ')
Пожалуйста, помогите мне решить эту ошибку.
сначала определил rootScope
сверху.
затем beforeEach
его beforeEach
как это
inject(function($injector) {
rootScope = $injector.get('$rootScope');
});
Тогда в вашем тестовом примере
expect(rootScope.$broadcast).toHaveBeenCalledWith("dateApply");
Если вы выполняете минимизацию, убедитесь, что rootScope не переименовывается.
rootScope.$broadcast
прежде чем вы сможете использоватьtoHaveBeenCalledWith
Читать документыspyOn
.