Я пытаюсь заставить ng-repeat работать в тесте на угловую директиву, но представление не обновляется при обновлении переменных $ scope и $ digest() называется.Угловой ng-repeat не работает в тесте Жасмин
'use strict';
describe('Asset tests', function() {
var $compile,
$rootScope,
$scope,
$timeout,
templateHtml = '<span ng-repeat="asset in assets">{{asset.id}}</span>',
view;
beforeEach(function() {
module('my.module');
inject(function(_$compile_, _$rootScope_, _$timeout_) {
$compile = _$compile_;
$rootScope = _$rootScope_;
$timeout = _$timeout_;
$scope = $rootScope.$new();
$scope.assets = [];
$scope.selectedItems = [];
$scope.deleteAsset = function() {
console.log('yay');
};
view = angular.element(templateHtml);
$compile(view)($scope);
$scope.$apply();
});
});
describe('Testing some stuff', function() {
it('should test some stuff', function() {
for(var i = 0; i < 3; i ++) {
$scope.assets.push({id:i, name: 'Rad ' + i});
};
$scope.$digest();
console.log(view);
console.log(jQuery('span').length);
});
});
});
Вход заявления Выход:
LOG: {0: <span ng-repeat="assets in assets">{{asset.id}}</span>, length: 1}
LOG: 56
спасибо, что указал эти вещи. По-прежнему получается тот же результат. См. Редактирование исходного кода. – binarygiant