0
我正在測試一個指令,其中我使用庫Mobiscroll
。我知道Mobiscroll也有一個角度組件,但我現在使用舊版本的Mobiscroll庫,所以我對此不感興趣。元素上的角度模擬方法
問題是,我想測試是否調用元素的方法,在這種情況下,mobiscroll方法。我有以下的代碼我的指令的鏈接方法:
link: function (scope, element, attr) {
var datepicker = element.find("input");
scope.showDate = function() {
datepicker.mobiscroll('show');
};
}
我想在我的茉莉花測試來檢查,如果datepicker.mobiscroll('show')
被調用。不過,我不能在我的測試中對元素設置間諜,因爲元素的查找不會導致指令中的鏈接方法中使用完全相同的對象。例如,下面不工作:
targetElement = $compile(elementBluePrint)($scope);
rootScope.$apply();
var target = targetElement.find("input");
spyOn(target, "mobiscroll").and.callThrough();
因爲這是不行的,我怎麼能在mobiscroll方法窺探我的角度茉莉花測試?