Merge pull request #1 from RayvarzTech/Pagination-and-count

Added : Count & Pagination
This commit is contained in:
alibw
2024-04-23 12:33:44 +03:30
committed by GitHub
2 changed files with 55 additions and 0 deletions

24
Count.http Normal file
View File

@@ -0,0 +1,24 @@
# @import ./PreScript.http
###
GET /products
Prefer: count=exact
?? status == 200
{{
const { expect } = require('chai');
let responseItems = JSON. parse(response.body);
let itemsCount = responseItems.length;
test('OK content-range', () => {
expect(response.headers['content-range']).to.equal(`0-${itemsCount - 1}/${itemsCount}`);
});
}}
GET /products
?? status == 200
{{
const { expect } = require('chai');
let responseItems = JSON. parse(response.body);
let itemsCount = responseItems.length;
test('OK content-range', () => {
expect(response.headers['content-range']).to.equal(`0-${itemsCount - 1}/*`);
});
}}

31
Pagination.http Normal file
View File

@@ -0,0 +1,31 @@
# @import ./PreScript.http
###
GET /products?limit=20
?? status == 200
{{
const { expect } = require('chai');
let responseItems = JSON. parse(response.body);
let itemsCount = responseItems.length;
test('OK content-range', () => {
expect(response.headers['content-range']).to.equal(`0-${itemsCount - 1}/*`);
});
}}
GET /products?limit=40&offset=7
?? status == 200
{{
const { expect } = require('chai');
test('OK content-range', () => {
expect(response.headers['content-range']).to.equal('7-46/*');
});
}}
GET /products?limit=20&offset=40
Prefer: count=exact
?? status == 206
{{
const { expect } = require('chai');
test('OK content-range', () => {
expect(response.headers['content-range']).to.equal('40-59/77');
});
}}