This repository was archived by the owner on Apr 12, 2024. It is now read-only.
File tree 1 file changed +48
-0
lines changed
1 file changed +48
-0
lines changed Original file line number Diff line number Diff line change @@ -125,6 +125,54 @@ describe('ngRepeat', function() {
125
125
} ) ;
126
126
127
127
128
+ it ( 'should still filter when track is present' , function ( ) {
129
+ scope . isIgor = function ( item ) {
130
+ return item . name === 'igor' ;
131
+ } ;
132
+ element = $compile (
133
+ '<ul>' +
134
+ '<li ng-repeat="item in items | filter:isIgor track by $id(item)">{{item.name}};</li>' +
135
+ '</ul>' ) ( scope ) ;
136
+ scope . items = [ { name : 'igor' } , { name : 'misko' } ] ;
137
+ scope . $digest ( ) ;
138
+
139
+ expect ( element . find ( 'li' ) . text ( ) ) . toBe ( 'igor;' ) ;
140
+ } ) ;
141
+
142
+
143
+ it ( 'should track using provided function when a filter is present' , function ( ) {
144
+ scope . newArray = function ( items ) {
145
+ var newArray = [ ] ;
146
+ angular . forEach ( items , function ( item ) {
147
+ newArray . push ( {
148
+ id : item . id ,
149
+ name : item . name
150
+ } ) ;
151
+ } ) ;
152
+ return newArray ;
153
+ } ;
154
+ element = $compile (
155
+ '<ul>' +
156
+ '<li ng-repeat="item in items | filter:newArray track by item.id">{{item.name}};</li>' +
157
+ '</ul>' ) ( scope ) ;
158
+ scope . items = [
159
+ { id : 1 , name : 'igor' } ,
160
+ { id : 2 , name : 'misko' }
161
+ ] ;
162
+ scope . $digest ( ) ;
163
+
164
+ expect ( element . text ( ) ) . toBe ( 'igor;misko;' ) ;
165
+
166
+ var li0 = element . find ( 'li' ) [ 0 ] ;
167
+ var li1 = element . find ( 'li' ) [ 1 ] ;
168
+
169
+ scope . items . push ( scope . items . shift ( ) ) ;
170
+ scope . $digest ( ) ;
171
+ expect ( element . find ( 'li' ) [ 0 ] ) . toBe ( li1 ) ;
172
+ expect ( element . find ( 'li' ) [ 1 ] ) . toBe ( li0 ) ;
173
+ } ) ;
174
+
175
+
128
176
it ( 'should iterate over an array of primitives' , function ( ) {
129
177
element = $compile (
130
178
'<ul>' +
You can’t perform that action at this time.
0 commit comments