UNPKG

aquameta-datum

Version:

Service layer for the Aquameta database API

38 lines 4.47 kB
import test from 'tape'; import { fn } from '../../database/chainable.js'; test('#fn - throws when no arguments provided', t => { t.throws(fn, Error); t.end(); }); test('#fn - parses schema and relation names from argument', t => { const func = fn('widget.transpile', {}); t.is(func.schemaName, 'widget'); t.is(func.fnName, 'transpile'); t.end(); }); test('#fn - adds `public` schema when no schema provided', t => { const func = fn('uuid_generate_v4', {}); t.is(func.schemaName, 'public'); t.is(func.fnName, 'uuid_generate_v4'); t.end(); }); test('#fn - handles val arrays', t => { const args = [1, 2, 3]; const func = fn('endpoint.create_session', args); t.deepEqual(func.args.args, [{ vals: args }]); t.end(); }); test('#fn - handles kwargs object', t => { const args = { name: 'my_name', new_session: true }; const func = fn('endpoint.create_session', args); t.deepEqual(func.args.args, [{ kwargs: args }]); t.end(); }); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNoYWluYWJsZS1mbi5qcyJdLCJuYW1lcyI6WyJ0ZXN0IiwiZm4iLCJ0IiwidGhyb3dzIiwiRXJyb3IiLCJlbmQiLCJmdW5jIiwiaXMiLCJzY2hlbWFOYW1lIiwiZm5OYW1lIiwiYXJncyIsImRlZXBFcXVhbCIsInZhbHMiLCJuYW1lIiwibmV3X3Nlc3Npb24iLCJrd2FyZ3MiXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLElBQVAsTUFBaUIsTUFBakI7QUFDQSxTQUFRQyxFQUFSLFFBQWlCLDZCQUFqQjtBQUVBRCxJQUFJLENBQUMseUNBQUQsRUFBNENFLENBQUMsSUFBSTtBQUNuREEsRUFBQUEsQ0FBQyxDQUFDQyxNQUFGLENBQVNGLEVBQVQsRUFBYUcsS0FBYjtBQUNBRixFQUFBQSxDQUFDLENBQUNHLEdBQUY7QUFDRCxDQUhHLENBQUo7QUFLQUwsSUFBSSxDQUFDLHNEQUFELEVBQXlERSxDQUFDLElBQUk7QUFDaEUsUUFBTUksSUFBSSxHQUFHTCxFQUFFLENBQUMsa0JBQUQsRUFBcUIsRUFBckIsQ0FBZjtBQUNBQyxFQUFBQSxDQUFDLENBQUNLLEVBQUYsQ0FBS0QsSUFBSSxDQUFDRSxVQUFWLEVBQXNCLFFBQXRCO0FBQ0FOLEVBQUFBLENBQUMsQ0FBQ0ssRUFBRixDQUFLRCxJQUFJLENBQUNHLE1BQVYsRUFBa0IsV0FBbEI7QUFDQVAsRUFBQUEsQ0FBQyxDQUFDRyxHQUFGO0FBQ0QsQ0FMRyxDQUFKO0FBT0FMLElBQUksQ0FBQyxvREFBRCxFQUF1REUsQ0FBQyxJQUFJO0FBQzlELFFBQU1JLElBQUksR0FBR0wsRUFBRSxDQUFDLGtCQUFELEVBQXFCLEVBQXJCLENBQWY7QUFDQUMsRUFBQUEsQ0FBQyxDQUFDSyxFQUFGLENBQUtELElBQUksQ0FBQ0UsVUFBVixFQUFzQixRQUF0QjtBQUNBTixFQUFBQSxDQUFDLENBQUNLLEVBQUYsQ0FBS0QsSUFBSSxDQUFDRyxNQUFWLEVBQWtCLGtCQUFsQjtBQUNBUCxFQUFBQSxDQUFDLENBQUNHLEdBQUY7QUFDRCxDQUxHLENBQUo7QUFPQUwsSUFBSSxDQUFDLDBCQUFELEVBQTZCRSxDQUFDLElBQUk7QUFDcEMsUUFBTVEsSUFBSSxHQUFHLENBQUMsQ0FBRCxFQUFJLENBQUosRUFBTyxDQUFQLENBQWI7QUFDQSxRQUFNSixJQUFJLEdBQUdMLEVBQUUsQ0FBQyx5QkFBRCxFQUE0QlMsSUFBNUIsQ0FBZjtBQUNBUixFQUFBQSxDQUFDLENBQUNTLFNBQUYsQ0FBWUwsSUFBSSxDQUFDSSxJQUFMLENBQVVBLElBQXRCLEVBQTRCLENBQUM7QUFBQ0UsSUFBQUEsSUFBSSxFQUFFRjtBQUFQLEdBQUQsQ0FBNUI7QUFDQVIsRUFBQUEsQ0FBQyxDQUFDRyxHQUFGO0FBQ0QsQ0FMRyxDQUFKO0FBT0FMLElBQUksQ0FBQyw2QkFBRCxFQUFnQ0UsQ0FBQyxJQUFJO0FBQ3ZDLFFBQU1RLElBQUksR0FBRztBQUFDRyxJQUFBQSxJQUFJLEVBQUUsU0FBUDtBQUFrQkMsSUFBQUEsV0FBVyxFQUFFO0FBQS9CLEdBQWI7QUFDQSxRQUFNUixJQUFJLEdBQUdMLEVBQUUsQ0FBQyx5QkFBRCxFQUE0QlMsSUFBNUIsQ0FBZjtBQUNBUixFQUFBQSxDQUFDLENBQUNTLFNBQUYsQ0FBWUwsSUFBSSxDQUFDSSxJQUFMLENBQVVBLElBQXRCLEVBQTRCLENBQUM7QUFBQ0ssSUFBQUEsTUFBTSxFQUFFTDtBQUFULEdBQUQsQ0FBNUI7QUFDQVIsRUFBQUEsQ0FBQyxDQUFDRyxHQUFGO0FBQ0QsQ0FMRyxDQUFKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHRlc3QgZnJvbSAndGFwZSc7XG5pbXBvcnQge2ZufSBmcm9tICcuLi8uLi9kYXRhYmFzZS9jaGFpbmFibGUuanMnO1xuXG50ZXN0KCcjZm4gLSB0aHJvd3Mgd2hlbiBubyBhcmd1bWVudHMgcHJvdmlkZWQnLCB0ID0+IHtcbiAgdC50aHJvd3MoZm4sIEVycm9yKTtcbiAgdC5lbmQoKTtcbn0pO1xuXG50ZXN0KCcjZm4gLSBwYXJzZXMgc2NoZW1hIGFuZCByZWxhdGlvbiBuYW1lcyBmcm9tIGFyZ3VtZW50JywgdCA9PiB7XG4gIGNvbnN0IGZ1bmMgPSBmbignd2lkZ2V0LnRyYW5zcGlsZScsIHt9KTtcbiAgdC5pcyhmdW5jLnNjaGVtYU5hbWUsICd3aWRnZXQnKTtcbiAgdC5pcyhmdW5jLmZuTmFtZSwgJ3RyYW5zcGlsZScpO1xuICB0LmVuZCgpO1xufSk7XG5cbnRlc3QoJyNmbiAtIGFkZHMgYHB1YmxpY2Agc2NoZW1hIHdoZW4gbm8gc2NoZW1hIHByb3ZpZGVkJywgdCA9PiB7XG4gIGNvbnN0IGZ1bmMgPSBmbigndXVpZF9nZW5lcmF0ZV92NCcsIHt9KTtcbiAgdC5pcyhmdW5jLnNjaGVtYU5hbWUsICdwdWJsaWMnKTtcbiAgdC5pcyhmdW5jLmZuTmFtZSwgJ3V1aWRfZ2VuZXJhdGVfdjQnKTtcbiAgdC5lbmQoKTtcbn0pO1xuXG50ZXN0KCcjZm4gLSBoYW5kbGVzIHZhbCBhcnJheXMnLCB0ID0+IHtcbiAgY29uc3QgYXJncyA9IFsxLCAyLCAzXTtcbiAgY29uc3QgZnVuYyA9IGZuKCdlbmRwb2ludC5jcmVhdGVfc2Vzc2lvbicsIGFyZ3MpO1xuICB0LmRlZXBFcXVhbChmdW5jLmFyZ3MuYXJncywgW3t2YWxzOiBhcmdzfV0pO1xuICB0LmVuZCgpO1xufSk7XG5cbnRlc3QoJyNmbiAtIGhhbmRsZXMga3dhcmdzIG9iamVjdCcsIHQgPT4ge1xuICBjb25zdCBhcmdzID0ge25hbWU6ICdteV9uYW1lJywgbmV3X3Nlc3Npb246IHRydWV9O1xuICBjb25zdCBmdW5jID0gZm4oJ2VuZHBvaW50LmNyZWF0ZV9zZXNzaW9uJywgYXJncyk7XG4gIHQuZGVlcEVxdWFsKGZ1bmMuYXJncy5hcmdzLCBbe2t3YXJnczogYXJnc31dKTtcbiAgdC5lbmQoKTtcbn0pO1xuIl19