insomnia/packages/insomnia-smoke-test/server/index.ts
James Gatz 4dd89b14d2
add gitlab oauth provider and ui (#4727)
* add gitlab oauth provider and ui

* add gitlab remaining

* add graphql field in query

* add gitlab oauth provider and ui

* add gitlab remaining

* add graphql field in query

* add some changes for testing

* add gitlab oauth provider and ui

* add gitlab remaining

* add graphql field in query

* add some changes for testing

* add some changes

* modify test

* try to refresh the token on git auth failure

* use localStorage to retrieve the session token

* simplify e2e tests for gitlab

* read the gitlab config from the api

* refresh the token if unauthorised

* use the rest api to fetch the user's data

* add loading state for config and handle 4xx errors in the ui

Co-authored-by: jackkav <jackkav@gmail.com>

* improve config fetching

* fix(e2e): add mock route for config

* Fix fetching gitlab config from the API

* add src as dep to avatar component hook

Co-authored-by: Mark Kim <yowmark613@gmail.com>
Co-authored-by: jackkav <jackkav@gmail.com>
Co-authored-by: David Marby <david@dmarby.se>
2022-06-01 10:39:31 +02:00

54 lines
1.2 KiB
TypeScript

import express from 'express';
import { basicAuthRouter } from './basic-auth';
import githubApi from './github-api';
import gitlabApi from './gitlab-api';
import { startGRPCServer } from './grpc';
import { oauthRoutes } from './oauth';
const app = express();
const port = 4010;
const grpcPort = 50051;
app.get('/pets/:id', (req, res) => {
res.status(200).send({ id: req.params.id });
});
app.get('/sleep', (_req, res) => {
res.status(200).send({ sleep: true });
});
app.get('/cookies', (_req, res) => {
res
.status(200)
.header('content-type', 'text/plain')
.cookie('insomnia-test-cookie', 'value123')
.send(`${_req.headers['cookie']}`);
});
app.use('/file', express.static('fixtures/files'));
app.use('/auth/basic', basicAuthRouter);
githubApi(app);
gitlabApi(app);
app.get('/delay/seconds/:duration', (req, res) => {
const delaySec = Number.parseInt(req.params.duration || '2');
setTimeout(function() {
res.send(`Delayed by ${delaySec} seconds`);
}, delaySec * 1000);
});
app.use('/oidc', oauthRoutes(port));
app.get('/', (_req, res) => {
res.status(200).send();
});
startGRPCServer(grpcPort).then(() => {
app.listen(port, () => {
console.log(`Listening at http://localhost:${port}`);
});
});