diff options
| author | Igor Minar | 2012-11-23 22:43:30 +0100 |
|---|---|---|
| committer | Igor Minar | 2012-11-26 21:33:45 +0100 |
| commit | cde2f1a868ffacdc592803358130587fd73aca7b (patch) | |
| tree | 82b18a000f03185f86e30ce6b8a87e5c33984677 /test/ng/directive | |
| parent | 6a831495dedc81e995bba276084eb3b23643557a (diff) | |
| download | angular.js-cde2f1a868ffacdc592803358130587fd73aca7b.tar.bz2 | |
fix(ngRepeat): support mostly-stable repeating for primitives
I'm reverting changes that were originally done to ngRepeat to fix #933,
because these are now not necessary after the previous changes to keep
ngModel always synced with the DOM.
Diffstat (limited to 'test/ng/directive')
| -rw-r--r-- | test/ng/directive/ngRepeatSpec.js | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/test/ng/directive/ngRepeatSpec.js b/test/ng/directive/ngRepeatSpec.js index 5442ff39..a45cd972 100644 --- a/test/ng/directive/ngRepeatSpec.js +++ b/test/ng/directive/ngRepeatSpec.js @@ -431,5 +431,23 @@ describe('ngRepeat', function() { expect(newElements[1]).toEqual(lis[1]); expect(newElements[2]).toEqual(lis[0]); }); + + + it('should reuse elements even when model is composed of primitives', function() { + // rebuilding repeater from scratch can be expensive, we should try to avoid it even for + // model that is composed of primitives. + + scope.items = ['hello', 'cau', 'ahoj']; + scope.$digest(); + lis = element.find('li'); + + scope.items = ['ahoj', 'hello', 'cau']; + scope.$digest(); + var newLis = element.find('li'); + expect(newLis.length).toEqual(3); + expect(newLis[0]).toEqual(lis[2]); + expect(newLis[1]).toEqual(lis[0]); + expect(newLis[2]).toEqual(lis[1]); + }); }); }); |
