6
나는 AngularJs를 처음 사용하고 의존성을 가진 지시어를 테스트하는 데 문제가있다. (비록 지시문 자체가 예상대로 작동하지만). 여기 또는 다른 리소스에서 답변을 찾을 수 없습니다.의존성을 지닌 angularjs 지시어 테스트하기
지침 :
angular.module('MyApp')
.directive('appVersion', ['config', function (config) {
return function (scope, elm) {
elm.text(config.version);
};
}]);
서비스 (값) : 여기
내 코드입니다angular.module('MyApp')
.value('config', {
version: '0.1'
});
테스트 :
describe('Directive: AppVersion', function() {
beforeEach(module('MyApp'));
var element;
it('should have element text set to config value', inject(function ($rootScope, $compile, config) {
var scope = $rootScope;
element = $compile('<app-version></app-version>')(scope);
expect(element.text()).toBe(config.version);
}));
});
내 테스트 메시지와 함께 실패입니다 :
Error: Expected '' to be '0.1'.
구성 값이 제대로 주입되었지만 $ complile이 사용하지 않았 음을 의미합니다. 나는 이것에 대한 어떤 도움이라도 정말로 바르게 평가할 것이다. 감사.
내가 해봤 그뿐만 아니라 전화로'범위 $ 다이제스트()'직접 있지만 결과없이 - 지시어가 실제로 범위를 사용하지 않기 때문에 나는 생각한다. – Tiger
편집 된 답변보기 –
감사합니다. 지금 작동합니다! 그러나 그것은 요소와 속성 모두로 테스트 외부에서 잘 작동한다는 것이 이상합니다. – Tiger