0
Fork 0
mirror of https://github.com/verdaccio/verdaccio.git synced 2024-12-30 22:34:10 -05:00
verdaccio/test/functional/lib/simple_server.ts

39 lines
875 B
TypeScript
Raw Normal View History

2017-11-27 01:15:09 -05:00
import bodyParser from 'body-parser';
import express from 'express';
2017-11-27 01:15:09 -05:00
2019-09-26 11:22:14 -05:00
/**
* Simple Server
*
2019-10-02 14:14:19 -05:00
* A empty express server with the objective to emumate any external API.
2019-09-26 11:22:14 -05:00
*
* eg: test/functional/tags/tags.ts
*
* express.get('/testexp_tags', function(req, res) {
let f = readTags().toString().replace(/__NAME__/g, 'testexp_tags');
res.send(JSON.parse(f));
});
*
* or at test/functional/package/gzip.ts
*/
export default class ExpressServer {
2019-09-26 11:22:14 -05:00
private app: any;
private server: any;
2017-11-27 01:15:09 -05:00
2019-09-26 11:22:14 -05:00
public constructor() {
2017-12-03 16:23:06 -05:00
this.app = express();
}
2019-09-26 11:22:14 -05:00
public start(port: number): Promise<ExpressServer> {
return new Promise((resolve) => {
2017-12-03 16:23:06 -05:00
this.app.use(bodyParser.json());
this.app.use(
bodyParser.urlencoded({
extended: true,
})
);
2017-11-27 01:15:09 -05:00
2019-09-26 11:22:14 -05:00
this.server = this.app.listen(port, () => resolve(this));
2017-12-03 16:23:06 -05:00
});
}
2017-11-27 01:15:09 -05:00
}