stagify
Version:
mongoose aggregate pipeline parser
57 lines (56 loc) • 1.86 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var qs = require("qs");
describe('utils/querify', function () {
it('should return { name: "sambath } when "name=sambath" passed as parameter', function () {
var input = 'name=sambath';
var expectedResult = {
name: 'sambath',
};
// act
var output = qs.parse(input);
console.log(output);
// assert
expect(output).toEqual(expectedResult);
});
it('should return "sort" when "sort[createdAt]=-1" passed as parameter', function () {
var input = 'sort[createdAt]=-1';
var expectedResult = {
sort: {
createdAt: '-1',
},
};
// act
var output = qs.parse(input);
console.log(output);
// assert
expect(output).toEqual(expectedResult);
});
// %2B = +
it('should include "range" when "age[]=%2B5&age[]=-18" passed as parameter', function () {
var input = 'age[]=%2B5&age[]=-18';
var expectedResult = {
age: ['+5', '-18'],
};
// act
var output = qs.parse(input);
console.log(output);
// assert
expect(output).toEqual(expectedResult);
});
it('should include "select" when "select[name]=1&select[createdAt]=1&select[age]=1" passed as parameter', function () {
var input = 'select[name]=1&select[createdAt]=1&select[age]=1';
var expectedResult = {
select: {
name: '1',
createdAt: '1',
age: '1',
},
};
// act
var output = qs.parse(input);
console.log(output);
// assert
expect(output).toEqual(expectedResult);
});
});