Skip to content

Commit 166a672

Browse files
committed
buffer cleanup spec: add indexes check
1 parent 8715dcd commit 166a672

File tree

2 files changed

+17
-6
lines changed

2 files changed

+17
-6
lines changed

test/AdapterTestsSpec.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1226,7 +1226,9 @@ describe('uiScroll', function () {
12261226
runTest(scrollSettings,
12271227
function (viewport, scope) {
12281228
expect(scope.adapter.bufferFirst).toBe('item1');
1229+
expect(Helper.getFirstRow(viewport)).toBe('1: item1');
12291230
expect(scope.adapter.bufferLast).toBe('item10');
1231+
expect(Helper.getLastRow(viewport)).toBe('10: item10');
12301232
expect(scope.adapter.bufferLength).toBe(10);
12311233
}
12321234
);
@@ -1239,7 +1241,9 @@ describe('uiScroll', function () {
12391241
viewport.trigger('scroll');
12401242

12411243
expect(scope.adapter.bufferFirst).toBe('item5');
1244+
expect(Helper.getFirstRow(viewport)).toBe('5: item5');
12421245
expect(scope.adapter.bufferLast).toBe('item20');
1246+
expect(Helper.getLastRow(viewport)).toBe('20: item20');
12431247
expect(scope.adapter.bufferLength).toBe(16);
12441248
}
12451249
);

test/BufferCleanupSpec.js

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -51,15 +51,17 @@ describe('uiScroll', function () {
5151
function (viewport, scope) {
5252
expect(scope.adapter.isBOF()).toBe(false);
5353
expect(scope.adapter.isEOF()).toBe(true);
54+
expect(scope.adapter.bufferFirst).toBe('item0');
55+
expect(scope.adapter.bufferLast).toBe('item6');
5456

5557
// remove items 0..6 items form -5..6 datasource
5658
cleanBuffer(scope, { immutableTop: true });
5759

5860
// result [-5..-1]
5961
expect(scope.adapter.isBOF()).toBe(true);
6062
expect(scope.adapter.isEOF()).toBe(true);
61-
expect(scope.adapter.bufferFirst).toBe('item-5');
62-
expect(scope.adapter.bufferLast).toBe('item-1');
63+
expect(Helper.getFirstRow(viewport)).toBe('-5: item-5');
64+
expect(Helper.getLastRow(viewport)).toBe('-1: item-1');
6365
expect(scope.adapter.bufferLength).toBe(5);
6466
}
6567
);
@@ -73,15 +75,17 @@ describe('uiScroll', function () {
7375
function (viewport, scope) {
7476
expect(scope.adapter.isBOF()).toBe(false);
7577
expect(scope.adapter.isEOF()).toBe(false);
78+
expect(scope.adapter.bufferFirst).toBe('item-4');
79+
expect(scope.adapter.bufferLast).toBe('item1');
7680

7781
// remove items -4..1 items form -5..6 datasource
7882
cleanBuffer(scope, { immutableTop: true });
7983

8084
// result [-5, 2, 3, 4]
8185
expect(scope.adapter.isBOF()).toBe(true);
8286
expect(scope.adapter.isEOF()).toBe(false);
83-
expect(scope.adapter.bufferFirst).toBe('item-5');
84-
expect(scope.adapter.bufferLast).toBe('item4');
87+
expect(Helper.getFirstRow(viewport)).toBe('-5: item-5');
88+
expect(Helper.getLastRow(viewport)).toBe('-2: item4');
8589
expect(scope.adapter.bufferLength).toBe(4);
8690
}
8791
);
@@ -95,19 +99,22 @@ describe('uiScroll', function () {
9599
function (viewport, scope) {
96100
expect(scope.adapter.isBOF()).toBe(true);
97101
expect(scope.adapter.isEOF()).toBe(false);
102+
expect(scope.adapter.bufferFirst).toBe('item-5');
103+
expect(scope.adapter.bufferLast).toBe('item1');
98104

99105
// remove items -5..1 items form -5..6 datasource
100106
cleanBuffer(scope);
101107

102108
// result [2..6]
103109
expect(scope.adapter.isBOF()).toBe(true);
104110
expect(scope.adapter.isEOF()).toBe(true);
105-
expect(scope.adapter.bufferFirst).toBe('item2');
106-
expect(scope.adapter.bufferLast).toBe('item6');
111+
expect(Helper.getFirstRow(viewport)).toBe('2: item2');
112+
expect(Helper.getLastRow(viewport)).toBe('6: item6');
107113
expect(scope.adapter.bufferLength).toBe(5);
108114
}
109115
);
110116
});
117+
111118
});
112119

113120
});

0 commit comments

Comments
 (0)