Я пишу тест для директивы, называемой календарной неделей, и получаю следующую угловую ошибку: https://docs.angularjs.org/error/ $ sce/insecurl? P0 = http:% 2F% 2Fhere. ком% 2Fviews% 2Fdirectives% 2FcalendarWeek.html
Моя спецификация имеет
describe('Tests for CalendarWeek Directive', function(){
var el, scope, controller;
beforeEach(function() {
module('MyApp');
return inject(function($injector, $compile, $rootScope, $httpBackend, $sce) {
el = angular.element("<div calendar-week></div>");
$compile(el)($rootScope.$new());
$rootScope.$digest();
controller = el.controller("calendarWeek");
$sce.trustAsResourceUrl("http://here.com/views/directives/calendarWeek.html")
$httpBackend.whenGET("http://here.com/views/directives/calendarWeek.html").respond({ hello: 'World' });
есть ли что-то я не хватает?
почему во время тестирования директивы вы проверить запрос сервера? директива должна только манипулировать DOM, и это то, что нужно проверить. ресурсы, запрашивающие данные с сервера, должны быть протестированы отдельно. –
Если вы перейдете по ссылке в сообщении об ошибке, вы увидите, что именно вам не хватает: обработка ресурса из ненадежного источника заблокирована. Угловой блокирует вас от загрузки небезопасного ресурса: https://docs.angularjs.org/api/ng/service/$sce –