@lskjs/server
Version:
LSK server.
80 lines (67 loc) • 6.8 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _express = _interopRequireDefault(require("express"));
var _supertest = _interopRequireDefault(require("supertest"));
var _runRoutes = _interopRequireDefault(require("./runRoutes"));
/* global describe test expect */
describe('Post Endpoints', function () {
test('should create a new post', /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
var expressApp, middleware, routes, app, res, res2;
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
expressApp = (0, _express["default"])();
middleware = function middleware(req, res, next) {
req.userId = 123;
return next();
};
routes = {
getRoutes: function getRoutes() {
return {
'/channels': {
'/find': function find(req, res) {
return res.status(200).json({
hello: 'world'
});
}
},
'USE /video': [middleware, {
'/find': function find(req, res) {
return res.status(200).json({
userId: req.userId
});
}
}]
};
}
};
app = {};
expressApp = _runRoutes["default"].call({
"this": app,
rootApi: routes,
express: expressApp
});
_context.next = 7;
return (0, _supertest["default"])(expressApp).get('/channels/find');
case 7:
res = _context.sent;
expect(res.statusCode).toEqual(200); // const res3 = await request(expressApp).get('/videos/qwe/find');
// expect(res3.statusCode).toEqual(200);
_context.next = 11;
return (0, _supertest["default"])(expressApp).get('/videos/find');
case 11:
res2 = _context.sent;
expect(res2.statusCode).toEqual(200); // expect(res.body).toEqual({ userId: 123 }); // TODO: DO IT
case 13:
case "end":
return _context.stop();
}
}
}, _callee);
})));
});
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tZXRob2RzL3J1blJvdXRlcy50ZXN0LmpzIl0sIm5hbWVzIjpbImRlc2NyaWJlIiwidGVzdCIsImV4cHJlc3NBcHAiLCJtaWRkbGV3YXJlIiwicmVxIiwicmVzIiwibmV4dCIsInVzZXJJZCIsInJvdXRlcyIsImdldFJvdXRlcyIsInN0YXR1cyIsImpzb24iLCJoZWxsbyIsImFwcCIsInJ1blJvdXRlcyIsImNhbGwiLCJyb290QXBpIiwiZXhwcmVzcyIsImdldCIsImV4cGVjdCIsInN0YXR1c0NvZGUiLCJ0b0VxdWFsIiwicmVzMiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFDQTs7QUFDQTs7QUFDQTs7QUFIQTtBQUtBQSxRQUFRLENBQUMsZ0JBQUQsRUFBbUIsWUFBTTtBQUMvQkMsRUFBQUEsSUFBSSxDQUFDLDBCQUFELDZGQUE2QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDM0JDLFlBQUFBLFVBRDJCLEdBQ2QsMEJBRGM7O0FBRXpCQyxZQUFBQSxVQUZ5QixHQUVaLFNBQWJBLFVBQWEsQ0FBQ0MsR0FBRCxFQUFNQyxHQUFOLEVBQVdDLElBQVgsRUFBb0I7QUFDckNGLGNBQUFBLEdBQUcsQ0FBQ0csTUFBSixHQUFhLEdBQWI7QUFDQSxxQkFBT0QsSUFBSSxFQUFYO0FBQ0QsYUFMOEI7O0FBT3pCRSxZQUFBQSxNQVB5QixHQU9oQjtBQUNiQyxjQUFBQSxTQURhLHVCQUNEO0FBQ1YsdUJBQU87QUFDTCwrQkFBYTtBQUNYLDZCQUFTLGNBQUNMLEdBQUQsRUFBTUMsR0FBTixFQUFjO0FBQ3JCLDZCQUFPQSxHQUFHLENBQUNLLE1BQUosQ0FBVyxHQUFYLEVBQWdCQyxJQUFoQixDQUFxQjtBQUFFQyx3QkFBQUEsS0FBSyxFQUFFO0FBQVQsdUJBQXJCLENBQVA7QUFDRDtBQUhVLG1CQURSO0FBTUwsZ0NBQWMsQ0FDWlQsVUFEWSxFQUVaO0FBQ0UsNkJBQVMsY0FBQ0MsR0FBRCxFQUFNQyxHQUFOLEVBQWM7QUFDckIsNkJBQU9BLEdBQUcsQ0FBQ0ssTUFBSixDQUFXLEdBQVgsRUFBZ0JDLElBQWhCLENBQXFCO0FBQUVKLHdCQUFBQSxNQUFNLEVBQUVILEdBQUcsQ0FBQ0c7QUFBZCx1QkFBckIsQ0FBUDtBQUNEO0FBSEgsbUJBRlk7QUFOVCxpQkFBUDtBQWVEO0FBakJZLGFBUGdCO0FBMkJ6Qk0sWUFBQUEsR0EzQnlCLEdBMkJuQixFQTNCbUI7QUE0Qi9CWCxZQUFBQSxVQUFVLEdBQUdZLHNCQUFVQyxJQUFWLENBQWU7QUFBRSxzQkFBTUYsR0FBUjtBQUFhRyxjQUFBQSxPQUFPLEVBQUVSLE1BQXRCO0FBQThCUyxjQUFBQSxPQUFPLEVBQUVmO0FBQXZDLGFBQWYsQ0FBYjtBQTVCK0I7QUFBQSxtQkE2QmIsMkJBQVFBLFVBQVIsRUFBb0JnQixHQUFwQixDQUF3QixnQkFBeEIsQ0E3QmE7O0FBQUE7QUE2QnpCYixZQUFBQSxHQTdCeUI7QUE4Qi9CYyxZQUFBQSxNQUFNLENBQUNkLEdBQUcsQ0FBQ2UsVUFBTCxDQUFOLENBQXVCQyxPQUF2QixDQUErQixHQUEvQixFQTlCK0IsQ0ErQi9CO0FBQ0E7O0FBaEMrQjtBQUFBLG1CQWlDWiwyQkFBUW5CLFVBQVIsRUFBb0JnQixHQUFwQixDQUF3QixjQUF4QixDQWpDWTs7QUFBQTtBQWlDekJJLFlBQUFBLElBakN5QjtBQWtDL0JILFlBQUFBLE1BQU0sQ0FBQ0csSUFBSSxDQUFDRixVQUFOLENBQU4sQ0FBd0JDLE9BQXhCLENBQWdDLEdBQWhDLEVBbEMrQixDQW1DL0I7O0FBbkMrQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxHQUE3QixHQUFKO0FBcUNELENBdENPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBnbG9iYWwgZGVzY3JpYmUgdGVzdCBleHBlY3QgKi9cbmltcG9ydCBleHByZXNzIGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IHJlcXVlc3QgZnJvbSAnc3VwZXJ0ZXN0JztcbmltcG9ydCBydW5Sb3V0ZXMgZnJvbSAnLi9ydW5Sb3V0ZXMnO1xuXG5kZXNjcmliZSgnUG9zdCBFbmRwb2ludHMnLCAoKSA9PiB7XG4gIHRlc3QoJ3Nob3VsZCBjcmVhdGUgYSBuZXcgcG9zdCcsIGFzeW5jICgpID0+IHtcbiAgICBsZXQgZXhwcmVzc0FwcCA9IGV4cHJlc3MoKTtcbiAgICBjb25zdCBtaWRkbGV3YXJlID0gKHJlcSwgcmVzLCBuZXh0KSA9PiB7XG4gICAgICByZXEudXNlcklkID0gMTIzO1xuICAgICAgcmV0dXJuIG5leHQoKTtcbiAgICB9O1xuXG4gICAgY29uc3Qgcm91dGVzID0ge1xuICAgICAgZ2V0Um91dGVzKCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICcvY2hhbm5lbHMnOiB7XG4gICAgICAgICAgICAnL2ZpbmQnOiAocmVxLCByZXMpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIHJlcy5zdGF0dXMoMjAwKS5qc29uKHsgaGVsbG86ICd3b3JsZCcgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ1VTRSAvdmlkZW8nOiBbXG4gICAgICAgICAgICBtaWRkbGV3YXJlLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAnL2ZpbmQnOiAocmVxLCByZXMpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzLnN0YXR1cygyMDApLmpzb24oeyB1c2VySWQ6IHJlcS51c2VySWQgfSk7XG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH07XG4gICAgICB9LFxuICAgIH07XG5cbiAgICBjb25zdCBhcHAgPSB7fTtcbiAgICBleHByZXNzQXBwID0gcnVuUm91dGVzLmNhbGwoeyB0aGlzOiBhcHAsIHJvb3RBcGk6IHJvdXRlcywgZXhwcmVzczogZXhwcmVzc0FwcCB9KTtcbiAgICBjb25zdCByZXMgPSBhd2FpdCByZXF1ZXN0KGV4cHJlc3NBcHApLmdldCgnL2NoYW5uZWxzL2ZpbmQnKTtcbiAgICBleHBlY3QocmVzLnN0YXR1c0NvZGUpLnRvRXF1YWwoMjAwKTtcbiAgICAvLyBjb25zdCByZXMzID0gYXdhaXQgcmVxdWVzdChleHByZXNzQXBwKS5nZXQoJy92aWRlb3MvcXdlL2ZpbmQnKTtcbiAgICAvLyBleHBlY3QocmVzMy5zdGF0dXNDb2RlKS50b0VxdWFsKDIwMCk7XG4gICAgY29uc3QgcmVzMiA9IGF3YWl0IHJlcXVlc3QoZXhwcmVzc0FwcCkuZ2V0KCcvdmlkZW9zL2ZpbmQnKTtcbiAgICBleHBlY3QocmVzMi5zdGF0dXNDb2RlKS50b0VxdWFsKDIwMCk7XG4gICAgLy8gZXhwZWN0KHJlcy5ib2R5KS50b0VxdWFsKHsgdXNlcklkOiAxMjMgfSk7IC8vIFRPRE86IERPIElUXG4gIH0pO1xufSk7XG4iXX0=
//# sourceMappingURL=runRoutes.test.js.map