我無法通過ng-mouseenter指令測試我的指令。ng-mouseenter的茉莉花測試
我想測試幾件事情,但首先,我需要測試提供給ng-mouseenter的方法是否被調用。
我的測試:
describe('hover tests', function() {
it('the triggerPopover method should be called on hover', function() {
spyOn($scope, 'triggerPopover');
var ars = jQuery(view.find('article.the-class-im-looking-for'));
jQuery(ars[0]).trigger('mouseenter');
expect($scope.triggerPopover).toHaveBeenCalled();
});
});
我的指令使用:
<article my-directive ng-mouseenter="triggerPopover();"></article>
結果:
預計間諜triggerPopover已被調用。 的NG-的mouseenter東西似乎沒有如果您使用PhantomJS爲你的測試被調用
是否有甚至DOM存在在茉莉花測試環境中?我以爲你必須使用'$ compile'服務。請參閱https://docs.angularjs.org/guide/unit-testing#directives – Phil 2014-10-09 00:34:02
爲簡潔起見,我縮短了代碼示例。在我們到達這一點之前,所有正常的事情都已經完成。 – binarygiant 2014-10-09 01:41:26