Firebase Angularfire-如何测试$watch回调?
AngularFire有自己的Firebase Angularfire-如何测试$watch回调?,firebase,jasmine,angularfire,Firebase,Jasmine,Angularfire,AngularFire有自己的$watch回调方法,可以附加到$firebaseArray的实例 如果我有类似于: $scope.registerAngularFireWatch = function(){ $scope.angularFireArray.$watch(function(data){ $scope.myVariable = true; $scope.anotherVariable = data; }); }; 在本例中,如何编写J
$watch
回调方法,可以附加到$firebaseArray
的实例
如果我有类似于:
$scope.registerAngularFireWatch = function(){
$scope.angularFireArray.$watch(function(data){
$scope.myVariable = true;
$scope.anotherVariable = data;
});
};
在本例中,如何编写Jasmine测试来触发
$watch
?您应该模拟$firebaseArray
服务,并为$watch
功能创建间谍:
var firebaseArrayMock = function () {
return {
$watch: jasmine.createSpy()
};
};
var controller;
// ...
beforeEach(function () {
controller = $controller('yourController', {
$firebaseArray: firebaseArrayMock
});
});
然后您可以期望它被调用:
expect(firebaseArrayMock.$watch).toBeCalled();