UNPKG

stagify

Version:

mongoose aggregate pipeline parser

107 lines (106 loc) 3.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var querify_1 = require("../querify"); describe('utils/querify', function () { // string and number filter it('should return { name:"sambath, age: 18 } when "name=sambath&age=18" passed as parameter', function () { // arrage var input = 'name=sambath&age=18'; var expectedResult = { filters: { name: { $eq: 'sambath' }, age: { $eq: 18 } }, select: {}, options: { skip: 0, limit: '25', sort: {} }, }; // act var output = (0, querify_1.default)(input); // assert expect(output).toEqual(expectedResult); }); // pagination it('should return correct skip=0&limit=10 when pass "page=1&limit=10" as parameter', function () { // arrage var input = 'page=1&limit=10'; var expected = { filters: {}, select: {}, options: { skip: 0, limit: '10', sort: {}, }, }; // act var output = (0, querify_1.default)(input); // assert expect(output).toEqual(expected); }); // pagination it('should return correct skip=25 when pass "page=2" as parameter', function () { // arrage var input = 'page=2'; var expected = { filters: {}, select: {}, options: { skip: 25, limit: '25', sort: {}, }, }; // act var output = (0, querify_1.default)(input); // assert expect(output).toEqual(expected); }); // pagination it('should return correct skip=25 when pass "page=2" as parameter', function () { // arrage var input = 'page=2'; var expected = { filters: {}, select: {}, options: { skip: 25, limit: '25', sort: {}, }, }; // act var output = (0, querify_1.default)(input); // assert expect(output).toEqual(expected); }); // select it('should return correct select when pass "select[name]=1"', function () { var input = 'select[name]=1'; var expected = { filters: {}, select: { name: 1, }, options: { skip: 0, limit: '25', sort: {}, }, }; // act var output = (0, querify_1.default)(input); // assert expect(output).toEqual(expected); }); it('should return correct sort when pass "sort[age]=-1', function () { var input = 'sort[age]=-1'; var expected = { filters: {}, select: {}, options: { skip: 0, limit: '25', sort: { age: '-1' }, }, }; var output = (0, querify_1.default)(input); expect(output).toEqual(expected); }); });