koa-jwt2
Version:
JWT authentication middleware.
23 lines (20 loc) • 849 B
JavaScript
const Stream = require("stream");
const Koa = require("koa");
const mockContext = (req, res, app) => {
const socket = new Stream.Duplex();
req = Object.assign({ headers: {}, socket }, Stream.Readable.prototype, req);
res = Object.assign({ _headers: {}, socket }, Stream.Writable.prototype, res);
req.socket.remoteAddress = req.socket.remoteAddress || "127.0.0.1";
req.url = "";
app = app || new Koa();
res.getHeader = k => res._headers[k.toLowerCase()];
res.setHeader = (k, v) => {
res._headers[k.toLowerCase()] = v;
return v;
};
res.removeHeader = k => delete res._headers[k.toLowerCase()];
return app.createContext(req, res);
};
mockContext.request = (req, res, app) => mockContext(req, res, app).request;
mockContext.response = (req, res, app) => mockContext(req, res, app).response;
module.exports = mockContext;