add pagequeryconverter tests, and check/query in pagequeryconverter

indiachan-spamvector
Thomas Lynch 2 years ago
parent dd6e081785
commit 15049a8a3d
  1. 1
      helpers/pagequeryconverter.js
  2. 23
      helpers/pagequeryconverter.test.js

@ -1,6 +1,7 @@
'use strict';
module.exports = (query, limit) => {
query = query || {};
const nopage = { ...query };
delete nopage.page;
const queryString = new URLSearchParams(nopage).toString();

@ -0,0 +1,23 @@
const pageQueryConverter = require('./pagequeryconverter.js');
const limit = 30;
describe('page query converter', () => {
const cases = [
{ in: null, out: { offset: 0, "queryString": "", page: 1 } },
{ in: { }, out: { offset: 0, "queryString": "", page: 1 } },
{ in: { page: [1, 2, 3] }, out: { offset: 0, "queryString": "", page: 1 } },
{ in: { page: "test" }, out: { offset: 0, "queryString": "", page: 1 } },
{ in: { page: null }, out: { offset: 0, "queryString": "", page: 1 } },
{ in: { page: -1 }, out: { offset: 0, "queryString": "", page: 1 } },
{ in: { page: 0 }, out: { offset: 0, "queryString": "", page: 1 } },
{ in: { page: 1 }, out: { offset: 0, "queryString": "", page: 1 } },
{ in: { page: 5 }, out: { offset: limit*4, "queryString": "", page: 5 } },
{ in: { page: 10, other: "test" }, out: { offset: limit*9, "queryString": "other=test", page: 10 } },
{ in: { other: "test" }, out: { offset: 0, "queryString": "other=test", page: 1 } },
];
for(let i in cases) {
test(`should contain ${cases[i].out} for an input of ${cases[i].in}`, () => {
expect(pageQueryConverter(cases[i].in, limit)).toStrictEqual(cases[i].out)
});
}
});
Loading…
Cancel
Save