UNPKG

aquameta-datum

Version:

Service layer for the Aquameta database API

53 lines (48 loc) 6.62 kB
"use strict"; var _ramda = require("ramda"); var _tape = _interopRequireDefault(require("tape")); var _chainable = require("../../database/chainable.js"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const rel = (0, _chainable.relation)('widget.widget'); (0, _tape.default)('#order - adds proper object to args', t => { const column = 'name'; const direction = 'asc'; const query = (0, _chainable.order)(direction, column)(rel); t.true(query.args.order instanceof Array); t.is(query.args.order[0].column, column); t.is(query.args.order[0].direction, direction); t.end(); }); (0, _tape.default)('#order - asc/desc add value', t => { const ascColumn = 'name'; const descColumn = 'updated_at'; const query = (0, _ramda.compose)((0, _chainable.orderByAsc)(ascColumn), (0, _chainable.orderByDesc)(descColumn))(rel); t.true(query.args.order instanceof Array); t.deepEqual(query.args.order, [{ column: descColumn, direction: 'desc' }, { column: ascColumn, direction: 'asc' }]); t.end(); }); (0, _tape.default)('#exclude - adds array values', t => { const columns = ['id', 'name']; const query = (0, _ramda.compose)((0, _chainable.exclude)(columns[1]), (0, _chainable.exclude)(columns[0]))(rel); t.true(query.args.exclude instanceof Array); t.deepEqual(query.args.exclude, [columns]); t.end(); }); (0, _tape.default)('#limit - adds value to args', t => { const value = '5'; const query = (0, _chainable.limit)(value)(rel); t.is(query.args.limit, value); t.end(); }); (0, _tape.default)('#limit - throws on invalid input', t => { const value = null; t.throws(() => (0, _chainable.limit)(value)(rel), TypeError); t.end(); }); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNoYWluYWJsZS5qcyJdLCJuYW1lcyI6WyJyZWwiLCJ0IiwiY29sdW1uIiwiZGlyZWN0aW9uIiwicXVlcnkiLCJ0cnVlIiwiYXJncyIsIm9yZGVyIiwiQXJyYXkiLCJpcyIsImVuZCIsImFzY0NvbHVtbiIsImRlc2NDb2x1bW4iLCJkZWVwRXF1YWwiLCJjb2x1bW5zIiwiZXhjbHVkZSIsInZhbHVlIiwibGltaXQiLCJ0aHJvd3MiLCJUeXBlRXJyb3IiXSwibWFwcGluZ3MiOiI7O0FBQUE7O0FBQ0E7O0FBQ0E7Ozs7QUFTQSxNQUFNQSxHQUFHLEdBQUcseUJBQVMsZUFBVCxDQUFaO0FBRUEsbUJBQUsscUNBQUwsRUFBNENDLENBQUMsSUFBSTtBQUMvQyxRQUFNQyxNQUFNLEdBQUcsTUFBZjtBQUNBLFFBQU1DLFNBQVMsR0FBRyxLQUFsQjtBQUVBLFFBQU1DLEtBQUssR0FBRyxzQkFBTUQsU0FBTixFQUFpQkQsTUFBakIsRUFBeUJGLEdBQXpCLENBQWQ7QUFFQUMsRUFBQUEsQ0FBQyxDQUFDSSxJQUFGLENBQU9ELEtBQUssQ0FBQ0UsSUFBTixDQUFXQyxLQUFYLFlBQTRCQyxLQUFuQztBQUNBUCxFQUFBQSxDQUFDLENBQUNRLEVBQUYsQ0FBS0wsS0FBSyxDQUFDRSxJQUFOLENBQVdDLEtBQVgsQ0FBaUIsQ0FBakIsRUFBb0JMLE1BQXpCLEVBQWlDQSxNQUFqQztBQUNBRCxFQUFBQSxDQUFDLENBQUNRLEVBQUYsQ0FBS0wsS0FBSyxDQUFDRSxJQUFOLENBQVdDLEtBQVgsQ0FBaUIsQ0FBakIsRUFBb0JKLFNBQXpCLEVBQW9DQSxTQUFwQztBQUNBRixFQUFBQSxDQUFDLENBQUNTLEdBQUY7QUFDRCxDQVZEO0FBWUEsbUJBQUssNkJBQUwsRUFBb0NULENBQUMsSUFBSTtBQUN2QyxRQUFNVSxTQUFTLEdBQUcsTUFBbEI7QUFDQSxRQUFNQyxVQUFVLEdBQUcsWUFBbkI7QUFFQSxRQUFNUixLQUFLLEdBQUcsb0JBQ1osMkJBQVdPLFNBQVgsQ0FEWSxFQUVaLDRCQUFZQyxVQUFaLENBRlksRUFHWlosR0FIWSxDQUFkO0FBS0FDLEVBQUFBLENBQUMsQ0FBQ0ksSUFBRixDQUFPRCxLQUFLLENBQUNFLElBQU4sQ0FBV0MsS0FBWCxZQUE0QkMsS0FBbkM7QUFDQVAsRUFBQUEsQ0FBQyxDQUFDWSxTQUFGLENBQVlULEtBQUssQ0FBQ0UsSUFBTixDQUFXQyxLQUF2QixFQUE4QixDQUM1QjtBQUFDTCxJQUFBQSxNQUFNLEVBQUVVLFVBQVQ7QUFBcUJULElBQUFBLFNBQVMsRUFBRTtBQUFoQyxHQUQ0QixFQUU1QjtBQUFDRCxJQUFBQSxNQUFNLEVBQUVTLFNBQVQ7QUFBb0JSLElBQUFBLFNBQVMsRUFBRTtBQUEvQixHQUY0QixDQUE5QjtBQUlBRixFQUFBQSxDQUFDLENBQUNTLEdBQUY7QUFDRCxDQWZEO0FBaUJBLG1CQUFLLDhCQUFMLEVBQXFDVCxDQUFDLElBQUk7QUFDeEMsUUFBTWEsT0FBTyxHQUFHLENBQUMsSUFBRCxFQUFPLE1BQVAsQ0FBaEI7QUFFQSxRQUFNVixLQUFLLEdBQUcsb0JBQ1osd0JBQVFVLE9BQU8sQ0FBQyxDQUFELENBQWYsQ0FEWSxFQUVaLHdCQUFRQSxPQUFPLENBQUMsQ0FBRCxDQUFmLENBRlksRUFHWmQsR0FIWSxDQUFkO0FBS0FDLEVBQUFBLENBQUMsQ0FBQ0ksSUFBRixDQUFPRCxLQUFLLENBQUNFLElBQU4sQ0FBV1MsT0FBWCxZQUE4QlAsS0FBckM7QUFDQVAsRUFBQUEsQ0FBQyxDQUFDWSxTQUFGLENBQVlULEtBQUssQ0FBQ0UsSUFBTixDQUFXUyxPQUF2QixFQUFnQyxDQUFDRCxPQUFELENBQWhDO0FBQ0FiLEVBQUFBLENBQUMsQ0FBQ1MsR0FBRjtBQUNELENBWEQ7QUFhQSxtQkFBSyw2QkFBTCxFQUFvQ1QsQ0FBQyxJQUFJO0FBQ3ZDLFFBQU1lLEtBQUssR0FBRyxHQUFkO0FBRUEsUUFBTVosS0FBSyxHQUFHLHNCQUFNWSxLQUFOLEVBQWFoQixHQUFiLENBQWQ7QUFFQUMsRUFBQUEsQ0FBQyxDQUFDUSxFQUFGLENBQUtMLEtBQUssQ0FBQ0UsSUFBTixDQUFXVyxLQUFoQixFQUF1QkQsS0FBdkI7QUFDQWYsRUFBQUEsQ0FBQyxDQUFDUyxHQUFGO0FBQ0QsQ0FQRDtBQVNBLG1CQUFLLGtDQUFMLEVBQXlDVCxDQUFDLElBQUk7QUFDNUMsUUFBTWUsS0FBSyxHQUFHLElBQWQ7QUFFQWYsRUFBQUEsQ0FBQyxDQUFDaUIsTUFBRixDQUFTLE1BQU0sc0JBQU1GLEtBQU4sRUFBYWhCLEdBQWIsQ0FBZixFQUFrQ21CLFNBQWxDO0FBQ0FsQixFQUFBQSxDQUFDLENBQUNTLEdBQUY7QUFDRCxDQUxEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtjb21wb3NlfSBmcm9tICdyYW1kYSc7XG5pbXBvcnQgdGVzdCBmcm9tICd0YXBlJztcbmltcG9ydCB7XG4gIHJlbGF0aW9uLFxuICBvcmRlcixcbiAgb3JkZXJCeUFzYyxcbiAgb3JkZXJCeURlc2MsXG4gIGxpbWl0LFxuICBleGNsdWRlLFxufSBmcm9tICcuLi8uLi9kYXRhYmFzZS9jaGFpbmFibGUuanMnO1xuXG5jb25zdCByZWwgPSByZWxhdGlvbignd2lkZ2V0LndpZGdldCcpO1xuXG50ZXN0KCcjb3JkZXIgLSBhZGRzIHByb3BlciBvYmplY3QgdG8gYXJncycsIHQgPT4ge1xuICBjb25zdCBjb2x1bW4gPSAnbmFtZSc7XG4gIGNvbnN0IGRpcmVjdGlvbiA9ICdhc2MnO1xuXG4gIGNvbnN0IHF1ZXJ5ID0gb3JkZXIoZGlyZWN0aW9uLCBjb2x1bW4pKHJlbCk7XG5cbiAgdC50cnVlKHF1ZXJ5LmFyZ3Mub3JkZXIgaW5zdGFuY2VvZiBBcnJheSk7XG4gIHQuaXMocXVlcnkuYXJncy5vcmRlclswXS5jb2x1bW4sIGNvbHVtbik7XG4gIHQuaXMocXVlcnkuYXJncy5vcmRlclswXS5kaXJlY3Rpb24sIGRpcmVjdGlvbik7XG4gIHQuZW5kKCk7XG59KTtcblxudGVzdCgnI29yZGVyIC0gYXNjL2Rlc2MgYWRkIHZhbHVlJywgdCA9PiB7XG4gIGNvbnN0IGFzY0NvbHVtbiA9ICduYW1lJztcbiAgY29uc3QgZGVzY0NvbHVtbiA9ICd1cGRhdGVkX2F0JztcblxuICBjb25zdCBxdWVyeSA9IGNvbXBvc2UoXG4gICAgb3JkZXJCeUFzYyhhc2NDb2x1bW4pLFxuICAgIG9yZGVyQnlEZXNjKGRlc2NDb2x1bW4pLFxuICApKHJlbCk7XG5cbiAgdC50cnVlKHF1ZXJ5LmFyZ3Mub3JkZXIgaW5zdGFuY2VvZiBBcnJheSk7XG4gIHQuZGVlcEVxdWFsKHF1ZXJ5LmFyZ3Mub3JkZXIsIFtcbiAgICB7Y29sdW1uOiBkZXNjQ29sdW1uLCBkaXJlY3Rpb246ICdkZXNjJ30sXG4gICAge2NvbHVtbjogYXNjQ29sdW1uLCBkaXJlY3Rpb246ICdhc2MnfSxcbiAgXSk7XG4gIHQuZW5kKCk7XG59KTtcblxudGVzdCgnI2V4Y2x1ZGUgLSBhZGRzIGFycmF5IHZhbHVlcycsIHQgPT4ge1xuICBjb25zdCBjb2x1bW5zID0gWydpZCcsICduYW1lJ107XG5cbiAgY29uc3QgcXVlcnkgPSBjb21wb3NlKFxuICAgIGV4Y2x1ZGUoY29sdW1uc1sxXSksXG4gICAgZXhjbHVkZShjb2x1bW5zWzBdKSxcbiAgKShyZWwpO1xuXG4gIHQudHJ1ZShxdWVyeS5hcmdzLmV4Y2x1ZGUgaW5zdGFuY2VvZiBBcnJheSk7XG4gIHQuZGVlcEVxdWFsKHF1ZXJ5LmFyZ3MuZXhjbHVkZSwgW2NvbHVtbnNdKTtcbiAgdC5lbmQoKTtcbn0pO1xuXG50ZXN0KCcjbGltaXQgLSBhZGRzIHZhbHVlIHRvIGFyZ3MnLCB0ID0+IHtcbiAgY29uc3QgdmFsdWUgPSAnNSc7XG5cbiAgY29uc3QgcXVlcnkgPSBsaW1pdCh2YWx1ZSkocmVsKTtcblxuICB0LmlzKHF1ZXJ5LmFyZ3MubGltaXQsIHZhbHVlKTtcbiAgdC5lbmQoKTtcbn0pO1xuXG50ZXN0KCcjbGltaXQgLSB0aHJvd3Mgb24gaW52YWxpZCBpbnB1dCcsIHQgPT4ge1xuICBjb25zdCB2YWx1ZSA9IG51bGw7XG5cbiAgdC50aHJvd3MoKCkgPT4gbGltaXQodmFsdWUpKHJlbCksIFR5cGVFcnJvcik7XG4gIHQuZW5kKCk7XG59KTtcbiJdfQ==