UNPKG

aquameta-datum

Version:

Service layer for the Aquameta database API

39 lines 4.3 kB
import test from 'tape'; import { database } from '../../index.js'; test('#http - parses request', t => { const req = { method: 'POST', url: '/endpoint/v1/relation/test/table?name=value', body: { body: true } }; const executable = database.http(req); t.is(executable.method, 'POST'); t.is(executable.url, 'v1/relation/test/table'); t.deepEqual(executable.args, { name: 'value' }); t.deepEqual(executable.data, { body: true }); t.end(); }); test('#http - parses source url into fn call', t => { const req = { url: '/db/widget/widget/Component.js' }; const executable = database.http(req); const expectedArgs = [{ vals: ['widget', 'widget', 'js', 'Component'] }]; t.is(executable.method, 'GET'); t.is(executable.url, 'function/endpoint/source'); t.deepEqual(executable.args, { args: expectedArgs, source: true }); t.is(executable.data, null); t.end(); }); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImV4ZWN1dGFibGUuanMiXSwibmFtZXMiOlsidGVzdCIsImRhdGFiYXNlIiwidCIsInJlcSIsIm1ldGhvZCIsInVybCIsImJvZHkiLCJleGVjdXRhYmxlIiwiaHR0cCIsImlzIiwiZGVlcEVxdWFsIiwiYXJncyIsIm5hbWUiLCJkYXRhIiwiZW5kIiwiZXhwZWN0ZWRBcmdzIiwidmFscyIsInNvdXJjZSJdLCJtYXBwaW5ncyI6IkFBRUEsT0FBT0EsSUFBUCxNQUFpQixNQUFqQjtBQUNBLFNBQVFDLFFBQVIsUUFBdUIsZ0JBQXZCO0FBRUFELElBQUksQ0FBQyx3QkFBRCxFQUEyQkUsQ0FBQyxJQUFJO0FBQ2xDLFFBQU1DLEdBQUcsR0FBRztBQUNWQyxJQUFBQSxNQUFNLEVBQUUsTUFERTtBQUVWQyxJQUFBQSxHQUFHLEVBQUUsNkNBRks7QUFHVkMsSUFBQUEsSUFBSSxFQUFFO0FBQUNBLE1BQUFBLElBQUksRUFBRTtBQUFQO0FBSEksR0FBWjtBQU1BLFFBQU1DLFVBQVUsR0FBR04sUUFBUSxDQUFDTyxJQUFULENBQWNMLEdBQWQsQ0FBbkI7QUFFQUQsRUFBQUEsQ0FBQyxDQUFDTyxFQUFGLENBQUtGLFVBQVUsQ0FBQ0gsTUFBaEIsRUFBd0IsTUFBeEI7QUFDQUYsRUFBQUEsQ0FBQyxDQUFDTyxFQUFGLENBQUtGLFVBQVUsQ0FBQ0YsR0FBaEIsRUFBcUIsd0JBQXJCO0FBQ0FILEVBQUFBLENBQUMsQ0FBQ1EsU0FBRixDQUFZSCxVQUFVLENBQUNJLElBQXZCLEVBQTZCO0FBQUNDLElBQUFBLElBQUksRUFBRTtBQUFQLEdBQTdCO0FBQ0FWLEVBQUFBLENBQUMsQ0FBQ1EsU0FBRixDQUFZSCxVQUFVLENBQUNNLElBQXZCLEVBQTZCO0FBQUNQLElBQUFBLElBQUksRUFBRTtBQUFQLEdBQTdCO0FBQ0FKLEVBQUFBLENBQUMsQ0FBQ1ksR0FBRjtBQUNELENBZEcsQ0FBSjtBQWdCQWQsSUFBSSxDQUFDLHdDQUFELEVBQTJDRSxDQUFDLElBQUk7QUFDbEQsUUFBTUMsR0FBRyxHQUFHO0FBQ1ZFLElBQUFBLEdBQUcsRUFBRTtBQURLLEdBQVo7QUFJQSxRQUFNRSxVQUFVLEdBQUdOLFFBQVEsQ0FBQ08sSUFBVCxDQUFjTCxHQUFkLENBQW5CO0FBRUEsUUFBTVksWUFBWSxHQUFHLENBQ25CO0FBQ0VDLElBQUFBLElBQUksRUFBRSxDQUFDLFFBQUQsRUFBVyxRQUFYLEVBQXFCLElBQXJCLEVBQTJCLFdBQTNCO0FBRFIsR0FEbUIsQ0FBckI7QUFNQWQsRUFBQUEsQ0FBQyxDQUFDTyxFQUFGLENBQUtGLFVBQVUsQ0FBQ0gsTUFBaEIsRUFBd0IsS0FBeEI7QUFDQUYsRUFBQUEsQ0FBQyxDQUFDTyxFQUFGLENBQUtGLFVBQVUsQ0FBQ0YsR0FBaEIsRUFBcUIsMEJBQXJCO0FBQ0FILEVBQUFBLENBQUMsQ0FBQ1EsU0FBRixDQUFZSCxVQUFVLENBQUNJLElBQXZCLEVBQTZCO0FBQzNCQSxJQUFBQSxJQUFJLEVBQUVJLFlBRHFCO0FBRTNCRSxJQUFBQSxNQUFNLEVBQUU7QUFGbUIsR0FBN0I7QUFJQWYsRUFBQUEsQ0FBQyxDQUFDTyxFQUFGLENBQUtGLFVBQVUsQ0FBQ00sSUFBaEIsRUFBc0IsSUFBdEI7QUFDQVgsRUFBQUEsQ0FBQyxDQUFDWSxHQUFGO0FBQ0QsQ0FyQkcsQ0FBSiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEBmbG93XG5cbmltcG9ydCB0ZXN0IGZyb20gJ3RhcGUnO1xuaW1wb3J0IHtkYXRhYmFzZX0gZnJvbSAnLi4vLi4vaW5kZXguanMnO1xuXG50ZXN0KCcjaHR0cCAtIHBhcnNlcyByZXF1ZXN0JywgdCA9PiB7XG4gIGNvbnN0IHJlcSA9IHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICB1cmw6ICcvZW5kcG9pbnQvdjEvcmVsYXRpb24vdGVzdC90YWJsZT9uYW1lPXZhbHVlJyxcbiAgICBib2R5OiB7Ym9keTogdHJ1ZX0sXG4gIH07XG5cbiAgY29uc3QgZXhlY3V0YWJsZSA9IGRhdGFiYXNlLmh0dHAocmVxKTtcblxuICB0LmlzKGV4ZWN1dGFibGUubWV0aG9kLCAnUE9TVCcpO1xuICB0LmlzKGV4ZWN1dGFibGUudXJsLCAndjEvcmVsYXRpb24vdGVzdC90YWJsZScpO1xuICB0LmRlZXBFcXVhbChleGVjdXRhYmxlLmFyZ3MsIHtuYW1lOiAndmFsdWUnfSk7XG4gIHQuZGVlcEVxdWFsKGV4ZWN1dGFibGUuZGF0YSwge2JvZHk6IHRydWV9KTtcbiAgdC5lbmQoKTtcbn0pO1xuXG50ZXN0KCcjaHR0cCAtIHBhcnNlcyBzb3VyY2UgdXJsIGludG8gZm4gY2FsbCcsIHQgPT4ge1xuICBjb25zdCByZXEgPSB7XG4gICAgdXJsOiAnL2RiL3dpZGdldC93aWRnZXQvQ29tcG9uZW50LmpzJyxcbiAgfTtcblxuICBjb25zdCBleGVjdXRhYmxlID0gZGF0YWJhc2UuaHR0cChyZXEpO1xuXG4gIGNvbnN0IGV4cGVjdGVkQXJncyA9IFtcbiAgICB7XG4gICAgICB2YWxzOiBbJ3dpZGdldCcsICd3aWRnZXQnLCAnanMnLCAnQ29tcG9uZW50J10sXG4gICAgfSxcbiAgXTtcblxuICB0LmlzKGV4ZWN1dGFibGUubWV0aG9kLCAnR0VUJyk7XG4gIHQuaXMoZXhlY3V0YWJsZS51cmwsICdmdW5jdGlvbi9lbmRwb2ludC9zb3VyY2UnKTtcbiAgdC5kZWVwRXF1YWwoZXhlY3V0YWJsZS5hcmdzLCB7XG4gICAgYXJnczogZXhwZWN0ZWRBcmdzLFxuICAgIHNvdXJjZTogdHJ1ZSxcbiAgfSk7XG4gIHQuaXMoZXhlY3V0YWJsZS5kYXRhLCBudWxsKTtcbiAgdC5lbmQoKTtcbn0pO1xuIl19