File tree Expand file tree Collapse file tree 2 files changed +47
-4
lines changed
app/code/Magento/Ui/view/base/web/js/dynamic-rows
dev/tests/js/jasmine/tests/app/code/Magento/Ui/base/js/dynamic-rows Expand file tree Collapse file tree 2 files changed +47
-4
lines changed Original file line number Diff line number Diff line change @@ -620,15 +620,12 @@ define([
620
620
* @param {Array } data
621
621
*/
622
622
parsePagesData : function ( data ) {
623
- var pages ;
624
-
625
623
this . relatedData = this . deleteProperty ?
626
624
_ . filter ( data , function ( elem ) {
627
625
return elem && elem [ this . deleteProperty ] !== this . deleteValue ;
628
626
} , this ) : data ;
629
627
630
- pages = Math . ceil ( this . relatedData . length / this . pageSize ) || 1 ;
631
- this . pages ( pages ) ;
628
+ this . _updatePagesQuantity ( ) ;
632
629
} ,
633
630
634
631
/**
@@ -885,6 +882,18 @@ define([
885
882
this . _sort ( ) ;
886
883
} ,
887
884
885
+ /**
886
+ * Update number of pages.
887
+ *
888
+ * @private
889
+ * @return void
890
+ */
891
+ _updatePagesQuantity : function ( ) {
892
+ var pages = Math . ceil ( this . relatedData . length / this . pageSize ) || 1 ;
893
+
894
+ this . pages ( pages ) ;
895
+ } ,
896
+
888
897
/**
889
898
* Reduce the number of pages
890
899
*
@@ -960,6 +969,7 @@ define([
960
969
reload : function ( ) {
961
970
this . clear ( ) ;
962
971
this . initChildren ( false , true ) ;
972
+ this . _updatePagesQuantity ( ) ;
963
973
964
974
/* After change page size need to check existing current page */
965
975
this . _reducePages ( ) ;
Original file line number Diff line number Diff line change @@ -171,5 +171,38 @@ define([
171
171
} ;
172
172
expect ( JSON . stringify ( model . labels ( ) ) ) . toEqual ( JSON . stringify ( result ) ) ;
173
173
} ) ;
174
+
175
+ it ( 'Check _updatePagesQuantity method call.' , function ( ) {
176
+ model . _updatePagesQuantity = jasmine . createSpy ( ) ;
177
+
178
+ model . reload ( ) ;
179
+
180
+ expect ( model . _updatePagesQuantity ) . toHaveBeenCalled ( ) ;
181
+ } ) ;
182
+
183
+ it ( 'Check number of pages is updated after reloading dynamic-rows.' , function ( ) {
184
+ model . pageSize = 1 ;
185
+ model . relatedData = [
186
+ {
187
+ name : 'first'
188
+ } ,
189
+ {
190
+ name : 'second'
191
+ } ,
192
+ {
193
+ name : 'third'
194
+ }
195
+ ] ;
196
+
197
+ model . reload ( ) ;
198
+ expect ( model . pages ( ) ) . toEqual ( 3 ) ;
199
+
200
+ model . currentPage ( 3 ) ;
201
+ model . pageSize = 2 ;
202
+
203
+ model . reload ( ) ;
204
+ expect ( model . pages ( ) ) . toEqual ( 2 ) ;
205
+ expect ( model . currentPage ( ) ) . toEqual ( 2 ) ;
206
+ } ) ;
174
207
} ) ;
175
208
} ) ;
You can’t perform that action at this time.
0 commit comments