Jak symulować dyrektywy, aby umożliwić testowanie jednostkowe dyrektywy wyższego poziomu?
W naszej aplikacji mamy kilka warstw zagnieżdżonych dyrektyw. Próbuję napisać kilka testów jednostkowych dla dyrektyw najwyższego poziomu. Kpiłem z rzeczy, których sama dyrektywa potrzebuje, ale teraz napotykam na błędy z dyrektyw niższego poziomu. W moich testach jednostkowych dla dyrektywy najwyższego poziomu nie chcę się martwić o to, co dzieje się w dyrektywach niższego poziomu. Chcę po prostu wyszydzać dyrektywę niższego poziomu i zasadniczo nie robić nic, więc mogę testować dyrektywę najwyższego poziomu w izolacji.
Próbowałem nadpisać definicję dyrektywy, wykonując coś takiego:
angular.module("myModule").directive("myLowerLevelDirective", function() {
return {
link: function(scope, element, attrs) {
//do nothing
}
}
});
Jednak nie zastępuje go, po prostu uruchamia to dodatkowo do rzeczywistej dyrektywy. Jak mogę powstrzymać te dyrektywy niższego poziomu przed robieniem czegokolwiek w moim teście jednostkowym dla dyrektywy najwyższego poziomu?