내가 각도 지침에 대한 카르마/재스민 시험이 : 내가 원하는대로
describe('placeholder directive', function() {
// Bindable members
var element;
// Load module
beforeEach(angular.mock.module('app'));
// Mock service response
beforeEach(module(function($provide) {
$provide.value('PlaceholderSupportService', function() {
return false;
});
}));
// Bind references to global variables
beforeEach(inject(function($compile, $rootScope) {
element = $compile('<input name="test" placeholder="Test" />')($rootScope);
$rootScope.$digest();
}));
// Check the correct HTML is rendered
it('Renders placeholder as input value when placeholder is not supported', inject(function($timeout) {
$timeout.flush();
expect(element[0].value).toBe('Test');
}));
});
그것은 작동합니다. 그러나 PlaceholderSupportService()
값을 false
으로 지정했습니다. 이 값이 true
인 두 번째 테스트를 실행하고 싶습니다. it
문 내에서 $provide
에 액세스 할 수없는 것 같습니다. 어떻게해야합니까?
예 저는 제가 그렇게 할 수 있다고 생각했습니다. 하지만 반드시 23 행의 코드를 복제하지 않고이를 수행하는 방법이 있습니다. – Coop