mirror of
https://github.com/typicode/json-server.git
synced 2025-07-27 20:23:34 +08:00
Update pagination (#346)
This commit is contained in:
@ -21,4 +21,76 @@ describe('utils', function () {
|
||||
assert.strictEqual(utils.toNative(true), true)
|
||||
})
|
||||
})
|
||||
|
||||
describe('getPage', function () {
|
||||
var array = [1, 2, 3, 4, 5]
|
||||
var perPage = 2
|
||||
|
||||
it('should return first page', function () {
|
||||
assert.deepEqual(
|
||||
utils.getPage(array, 1, perPage),
|
||||
{
|
||||
items: [1, 2],
|
||||
current: 1,
|
||||
first: 1,
|
||||
next: 2,
|
||||
last: 3
|
||||
}
|
||||
)
|
||||
})
|
||||
|
||||
it('should return second page', function () {
|
||||
assert.deepEqual(
|
||||
utils.getPage(array, 2, perPage),
|
||||
{
|
||||
items: [3, 4],
|
||||
current: 2,
|
||||
first: 1,
|
||||
prev: 1,
|
||||
next: 3,
|
||||
last: 3
|
||||
}
|
||||
)
|
||||
})
|
||||
|
||||
it('should return third page (last)', function () {
|
||||
assert.deepEqual(
|
||||
utils.getPage(array, 3, perPage),
|
||||
{
|
||||
items: [5],
|
||||
current: 3,
|
||||
first: 1,
|
||||
prev: 2,
|
||||
last: 3
|
||||
}
|
||||
)
|
||||
})
|
||||
|
||||
it('should return an empty array if page is greater than the last page', function () {
|
||||
assert.deepEqual(
|
||||
utils.getPage(array, 99, perPage),
|
||||
{
|
||||
items: []
|
||||
}
|
||||
)
|
||||
})
|
||||
|
||||
it('should return the array if perPage is greater than the array size', function () {
|
||||
assert.deepEqual(
|
||||
utils.getPage(array, 1, 99),
|
||||
{
|
||||
items: array
|
||||
}
|
||||
)
|
||||
})
|
||||
|
||||
it('should return an empty array if the array is empty', function () {
|
||||
assert.deepEqual(
|
||||
utils.getPage([], 1, 1),
|
||||
{
|
||||
items: []
|
||||
}
|
||||
)
|
||||
})
|
||||
})
|
||||
})
|
||||
|
Reference in New Issue
Block a user