Skip to content

Commit 86d5e0c

Browse files
committed
tests Helper: paddings heights
1 parent 80af624 commit 86d5e0c

File tree

6 files changed

+68
-79
lines changed

6 files changed

+68
-79
lines changed

test/BasicSetupSpec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,11 @@ describe('uiScroll', function() {
5353

5454
var topPadding = viewport.children()[0];
5555
expect(topPadding.tagName.toLowerCase()).toBe('div');
56-
expect(angular.element(topPadding).css('height')).toBe('0px');
56+
expect(Helper.getTopPadding(viewport)).toBe(0);
5757

5858
var bottomPadding = viewport.children()[1];
5959
expect(bottomPadding.tagName.toLowerCase()).toBe('div');
60-
expect(angular.element(bottomPadding).css('height')).toBe('0px');
60+
expect(Helper.getBottomPadding(viewport)).toBe(0);
6161
}
6262
);
6363
});

test/BasicTestsSpec.js

Lines changed: 16 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -119,8 +119,8 @@ describe('uiScroll', function () {
119119
var itemsWithPaddings = itemsLoaded + 2;
120120
expect(viewport.children().length).toBe(itemsWithPaddings);
121121
expect(viewport.scrollTop()).toBe(0);
122-
expect(viewport.children().css('height')).toBe('0px');
123-
expect(angular.element(viewport.children()[itemsWithPaddings - 1]).css('height')).toBe('0px');
122+
expect(Helper.getTopPadding(viewport)).toBe(0);
123+
expect(Helper.getBottomPadding(viewport)).toBe(0);
124124

125125
for (var i = 1; i < itemsLoaded; i++) {
126126
var row = viewport.children()[i];
@@ -160,8 +160,8 @@ describe('uiScroll', function () {
160160
inject(function () {
161161
expect(viewport.children().length).toBe(itemsWithPaddings);
162162
expect(viewport.scrollTop()).toBe(100);
163-
expect(viewport.children().css('height')).toBe('0px');
164-
expect(angular.element(viewport.children()[itemsWithPaddings-1]).css('height')).toBe('0px');
163+
expect(Helper.getTopPadding(viewport)).toBe(0);
164+
expect(Helper.getBottomPadding(viewport)).toBe(0);
165165

166166
for (var i = 1; i < itemsLoaded; i++) {
167167
var row = viewport.children()[i];
@@ -208,8 +208,8 @@ describe('uiScroll', function () {
208208

209209
expect(viewport.children().length).toBe(itemsWithPaddings);
210210
expect(viewport.scrollTop()).toBe(280);
211-
expect(viewport.children().css('height')).toBe('160px');
212-
expect(angular.element(viewport.children()[itemsWithPaddings-1]).css('height')).toBe('0px');
211+
expect(Helper.getTopPadding(viewport)).toBe(160);
212+
expect(Helper.getBottomPadding(viewport)).toBe(0);
213213

214214
for (var i = 1; i <= itemsLoaded; i++) {
215215
var row = viewport.children()[i];
@@ -263,8 +263,8 @@ describe('uiScroll', function () {
263263

264264
expect(viewport.children().length).toBe(itemsWithPaddings);
265265
expect(viewport.scrollTop()).toBe(0);
266-
expect(viewport.children().css('height')).toBe('0px');
267-
expect(angular.element(viewport.children()[itemsWithPaddings-1]).css('height')).toBe('280px');
266+
expect(Helper.getTopPadding(viewport)).toBe(0);
267+
expect(Helper.getBottomPadding(viewport)).toBe(280);
268268

269269
for (var i = 1; i <= itemsLoaded; i++) {
270270
var row = viewport.children()[i];
@@ -511,13 +511,11 @@ describe('uiScroll', function () {
511511
it('should calculate top padding element\'s height during scroll down', function () {
512512
runTest(scrollSettings,
513513
function (viewport) {
514-
var topPaddingElement = angular.element(viewport.children()[0]);
515-
516514
// scroll down + expectation
517515
for(var i = 0; i < 6; i++) {
518516
viewport.scrollTop(5000);
519517
viewport.trigger('scroll');
520-
expect(topPaddingElement.height()).toBe(itemHeight * bufferSize * (i + 1));
518+
expect(Helper.getTopPadding(viewport)).toBe(itemHeight * bufferSize * (i + 1));
521519
}
522520
}
523521
);
@@ -526,13 +524,11 @@ describe('uiScroll', function () {
526524
it('should calculate bottom padding element\'s height during scroll up', function () {
527525
runTest(scrollSettings,
528526
function (viewport) {
529-
var bottomPaddingElement = angular.element(viewport.children()[viewport.children().length - 1]);
530-
531527
// scroll up + expectation
532528
for(var i = 0; i < 6; i++) {
533529
viewport.scrollTop(-5000);
534530
viewport.trigger('scroll');
535-
expect(bottomPaddingElement.height()).toBe(itemHeight * bufferSize * (i + 1));
531+
expect(Helper.getBottomPadding(viewport)).toBe(itemHeight * bufferSize * (i + 1));
536532
}
537533

538534
}
@@ -542,34 +538,31 @@ describe('uiScroll', function () {
542538
it('should calculate both padding elements heights during scroll down and up', function () {
543539
runTest(scrollSettings,
544540
function (viewport) {
545-
var topPaddingElement = angular.element(viewport.children()[0]);
546-
var bottomPaddingElement = angular.element(viewport.children()[viewport.children().length - 1]);
547-
548541
var scrollDelta = itemHeight * bufferSize;
549542
var i, scrollIteration = 7;
550543

551544
// scroll down + expectation
552545
for(i = 0; i < scrollIteration; i++) {
553546
viewport.scrollTop(viewport.scrollTop() + scrollDelta);
554547
viewport.trigger('scroll');
555-
expect(topPaddingElement.height()).toBe(itemHeight * bufferSize * (i + 1));
556-
expect(bottomPaddingElement.height()).toBe(0);
548+
expect(Helper.getTopPadding(viewport)).toBe(itemHeight * bufferSize * (i + 1));
549+
expect(Helper.getBottomPadding(viewport)).toBe(0);
557550
}
558551

559552
// scroll up + expectation
560553
for(i = 0; i < scrollIteration; i++) {
561554
viewport.scrollTop(viewport.scrollTop() - scrollDelta);
562555
viewport.trigger('scroll');
563-
expect(topPaddingElement.height()).toBe(itemHeight * bufferSize * (scrollIteration - i - 1));
564-
expect(bottomPaddingElement.height()).toBe(itemHeight * bufferSize * (i + 1));
556+
expect(Helper.getTopPadding(viewport)).toBe(itemHeight * bufferSize * (scrollIteration - i - 1));
557+
expect(Helper.getBottomPadding(viewport)).toBe(itemHeight * bufferSize * (i + 1));
565558
}
566559

567560
// further scroll up + expectation
568561
for(i = scrollIteration; i < 2*scrollIteration; i++) {
569562
viewport.scrollTop(viewport.scrollTop() - scrollDelta);
570563
viewport.trigger('scroll');
571-
expect(topPaddingElement.height()).toBe(0);
572-
expect(bottomPaddingElement.height()).toBe(itemHeight * bufferSize * (i + 1));
564+
expect(Helper.getTopPadding(viewport)).toBe(0);
565+
expect(Helper.getBottomPadding(viewport)).toBe(itemHeight * bufferSize * (i + 1));
573566
}
574567
}
575568
);

test/PaddingsSpec.js

Lines changed: 26 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -32,18 +32,6 @@ describe('uiScroll Paddings spec.', () => {
3232
datasource.maxIndex = datasource.max;
3333
}
3434

35-
function getBottomPaddingHeight(viewport) {
36-
const viewportChildren = viewport.children();
37-
const bottomPadding = viewportChildren[viewportChildren.length - 1];
38-
return parseInt(angular.element(bottomPadding).css('height'), 10);
39-
}
40-
41-
function getTopPaddingHeight(viewport) {
42-
const viewportChildren = viewport.children();
43-
const topPadding = viewportChildren[0];
44-
return parseInt(angular.element(topPadding).css('height'), 10);
45-
}
46-
4735
function scrollBottom(viewport, count = 1) {
4836
for (var i = 0; i < count; i++) {
4937
viewport.scrollTop(99999);
@@ -116,11 +104,11 @@ describe('uiScroll Paddings spec.', () => {
116104

117105
scrollBottom(viewport, MAX);
118106
outside && scrollTop(viewport);
119-
const initialBottomHeight = getBottomPaddingHeight(viewport);
107+
const initialBottomHeight = Helper.getBottomPadding(viewport);
120108

121109
removeItem(datasource, datasource.max);
122110
scope.adapter.applyUpdates(itemsCount, []);
123-
outside && expect(getBottomPaddingHeight(viewport)).toBe(initialBottomHeight - itemHeight);
111+
outside && expect(Helper.getBottomPadding(viewport)).toBe(initialBottomHeight - itemHeight);
124112

125113
!outside && scrollTop(viewport);
126114
scrollBottom(viewport, MAX);
@@ -142,12 +130,12 @@ describe('uiScroll Paddings spec.', () => {
142130
scrollBottom(viewport, MAX);
143131
outside && scrollTop(viewport);
144132

145-
const initialBottomHeight = getBottomPaddingHeight(viewport);
133+
const initialBottomHeight = Helper.getBottomPadding(viewport);
146134
removeItem(datasource, datasource.max);
147135
scope.adapter.applyUpdates(itemsCount, []);
148136
removeItem(datasource, datasource.max);
149137
scope.adapter.applyUpdates(itemsCount - 1, []);
150-
outside && expect(getBottomPaddingHeight(viewport)).toBe(initialBottomHeight - itemHeight * 2);
138+
outside && expect(Helper.getBottomPadding(viewport)).toBe(initialBottomHeight - itemHeight * 2);
151139

152140
!outside && scrollTop(viewport);
153141
scrollBottom(viewport, MAX);
@@ -169,10 +157,10 @@ describe('uiScroll Paddings spec.', () => {
169157
scrollBottom(viewport, MAX);
170158
outside && scrollTop(viewport);
171159

172-
const initialBottomHeight = getBottomPaddingHeight(viewport);
160+
const initialBottomHeight = Helper.getBottomPadding(viewport);
173161
removeItem(datasource, datasource.max - 1);
174162
scope.adapter.applyUpdates(itemsCount - 1, []);
175-
outside && expect(getBottomPaddingHeight(viewport)).toBe(initialBottomHeight - itemHeight);
163+
outside && expect(Helper.getBottomPadding(viewport)).toBe(initialBottomHeight - itemHeight);
176164

177165
!outside && scrollTop(viewport);
178166
scrollBottom(viewport, MAX);
@@ -194,16 +182,16 @@ describe('uiScroll Paddings spec.', () => {
194182

195183
outside && scrollBottom(viewport, MAX);
196184

197-
const initialTopHeight = getTopPaddingHeight(viewport);
185+
const initialTopHeight = Helper.getTopPadding(viewport);
198186
removeItem(datasource, datasource.min);
199187
scope.adapter.applyUpdates(1, []);
200-
outside && expect(getTopPaddingHeight(viewport)).toBe(initialTopHeight - itemHeight);
188+
outside && expect(Helper.getTopPadding(viewport)).toBe(initialTopHeight - itemHeight);
201189

202190
!outside && scrollBottom(viewport, MAX);
203-
expect(getBottomPaddingHeight(viewport)).toBe(0);
191+
expect(Helper.getBottomPadding(viewport)).toBe(0);
204192

205193
scrollTop(viewport);
206-
expect(getTopPaddingHeight(viewport)).toBe(0);
194+
expect(Helper.getTopPadding(viewport)).toBe(0);
207195
checkRow(viewport, 1, '2: item2');
208196
}
209197
)
@@ -220,18 +208,18 @@ describe('uiScroll Paddings spec.', () => {
220208

221209
outside && scrollBottom(viewport, MAX);
222210

223-
const initialTopHeight = getTopPaddingHeight(viewport);
211+
const initialTopHeight = Helper.getTopPadding(viewport);
224212
removeItem(datasource, datasource.min);
225213
scope.adapter.applyUpdates(1, []);
226214
removeItem(datasource, datasource.min);
227215
scope.adapter.applyUpdates(2, []);
228-
outside && expect(getTopPaddingHeight(viewport)).toBe(initialTopHeight - itemHeight * 2);
216+
outside && expect(Helper.getTopPadding(viewport)).toBe(initialTopHeight - itemHeight * 2);
229217

230218
!outside && scrollBottom(viewport, MAX);
231-
expect(getBottomPaddingHeight(viewport)).toBe(0);
219+
expect(Helper.getBottomPadding(viewport)).toBe(0);
232220

233221
scrollTop(viewport);
234-
expect(getTopPaddingHeight(viewport)).toBe(0);
222+
expect(Helper.getTopPadding(viewport)).toBe(0);
235223
checkRow(viewport, 1, '3: item3');
236224
}
237225
)
@@ -248,16 +236,16 @@ describe('uiScroll Paddings spec.', () => {
248236

249237
outside && scrollBottom(viewport, MAX);
250238

251-
const initialTopHeight = getTopPaddingHeight(viewport);
239+
const initialTopHeight = Helper.getTopPadding(viewport);
252240
removeItem(datasource, datasource.min + 1);
253241
scope.adapter.applyUpdates(2, []);
254-
outside && expect(getTopPaddingHeight(viewport)).toBe(initialTopHeight - itemHeight * 1);
242+
outside && expect(Helper.getTopPadding(viewport)).toBe(initialTopHeight - itemHeight * 1);
255243

256244
!outside && scrollBottom(viewport, MAX);
257-
expect(getBottomPaddingHeight(viewport)).toBe(0);
245+
expect(Helper.getBottomPadding(viewport)).toBe(0);
258246

259247
scrollTop(viewport);
260-
expect(getTopPaddingHeight(viewport)).toBe(0);
248+
expect(Helper.getTopPadding(viewport)).toBe(0);
261249
checkRow(viewport, 1, '1: item1');
262250
checkRow(viewport, 2, '2: item3');
263251
}
@@ -337,11 +325,11 @@ describe('uiScroll Paddings spec.', () => {
337325
scope.adapter.applyUpdates(2, []);
338326

339327
scrollBottom(viewport, MAX);
340-
expect(getBottomPaddingHeight(viewport)).toBe(0);
328+
expect(Helper.getBottomPadding(viewport)).toBe(0);
341329
checkRowBack(viewport, 1, (itemsCount - 1) + ': item' + itemsCount);
342330

343331
scrollTop(viewport);
344-
expect(getTopPaddingHeight(viewport)).toBe(0);
332+
expect(Helper.getTopPadding(viewport)).toBe(0);
345333
checkRow(viewport, 1, '1: item1');
346334
checkRow(viewport, 2, '2: item3');
347335
}
@@ -359,11 +347,11 @@ describe('uiScroll Paddings spec.', () => {
359347
scope.adapter.applyUpdates(19, []);
360348

361349
scrollBottom(viewport);
362-
expect(getBottomPaddingHeight(viewport)).toBe(0);
350+
expect(Helper.getBottomPadding(viewport)).toBe(0);
363351
checkRowBack(viewport, 1, (itemsCount - 1) + ': item' + itemsCount);
364352

365353
scrollTop(viewport);
366-
expect(getTopPaddingHeight(viewport)).toBe(0);
354+
expect(Helper.getTopPadding(viewport)).toBe(0);
367355
}
368356
)
369357
)
@@ -379,11 +367,11 @@ describe('uiScroll Paddings spec.', () => {
379367
scope.adapter.applyUpdates(1, []);
380368

381369
scrollBottom(viewport, MAX);
382-
expect(getBottomPaddingHeight(viewport)).toBe(0);
370+
expect(Helper.getBottomPadding(viewport)).toBe(0);
383371
checkRowBack(viewport, 1, itemsCount + ': item' + itemsCount);
384372

385373
scrollTop(viewport);
386-
expect(getTopPaddingHeight(viewport)).toBe(0);
374+
expect(Helper.getTopPadding(viewport)).toBe(0);
387375
checkRow(viewport, 1, '2: item2');
388376
checkRow(viewport, 2, '3: item3');
389377
}
@@ -401,11 +389,11 @@ describe('uiScroll Paddings spec.', () => {
401389
scope.adapter.applyUpdates(itemsCount, []);
402390

403391
scrollBottom(viewport, MAX);
404-
expect(getBottomPaddingHeight(viewport)).toBe(0);
392+
expect(Helper.getBottomPadding(viewport)).toBe(0);
405393
checkRowBack(viewport, 1, (itemsCount - 1) + ': item' + (itemsCount - 1));
406394

407395
scrollTop(viewport);
408-
expect(getTopPaddingHeight(viewport)).toBe(0);
396+
expect(Helper.getTopPadding(viewport)).toBe(0);
409397
checkRow(viewport, 1, '1: item1');
410398
checkRow(viewport, 2, '2: item2');
411399
}

0 commit comments

Comments
 (0)