From 125f91632f0607903596fff3aeaf67d3df593ec7 Mon Sep 17 00:00:00 2001 From: Hayden Young Date: Fri, 15 Oct 2021 11:05:51 +0000 Subject: [PATCH] feat: add tests to gateway routes, split into own routers --- api/src/routes/{gateway.ts => gateway/bot.ts} | 26 ++++++++++++++----- api/src/routes/gateway/index.ts | 24 +++++++++++++++++ 2 files changed, 44 insertions(+), 6 deletions(-) rename api/src/routes/{gateway.ts => gateway/bot.ts} (50%) create mode 100644 api/src/routes/gateway/index.ts diff --git a/api/src/routes/gateway.ts b/api/src/routes/gateway/bot.ts similarity index 50% rename from api/src/routes/gateway.ts rename to api/src/routes/gateway/bot.ts index 4b3a0ea6..3a038276 100644 --- a/api/src/routes/gateway.ts +++ b/api/src/routes/gateway/bot.ts @@ -1,15 +1,29 @@ import { Config } from "@fosscord/util"; import { Router, Response, Request } from "express"; -import { route } from "@fosscord/api"; +import { route, RouteOptions } from "@fosscord/api"; const router = Router(); -router.get("/", route({}), (req: Request, res: Response) => { - const { endpointPublic } = Config.get().gateway; - res.json({ url: endpointPublic || process.env.GATEWAY || "ws://localhost:3002" }); -}); +export interface GatewayBotResponse { + url: string; + shards: number; + session_start_limit: { + total: number; + remaining: number; + reset_after: number; + max_concurrency: number; + } +} -router.get("/bot", route({}), (req: Request, res: Response) => { +const options: RouteOptions = { + test: { + response: { + body: "GatewayBotResponse" + } + } +}; + +router.get("/bot", route(options), (req: Request, res: Response) => { const { endpointPublic } = Config.get().gateway; res.json({ url: endpointPublic || process.env.GATEWAY || "ws://localhost:3002", diff --git a/api/src/routes/gateway/index.ts b/api/src/routes/gateway/index.ts new file mode 100644 index 00000000..9bad7478 --- /dev/null +++ b/api/src/routes/gateway/index.ts @@ -0,0 +1,24 @@ +import { Config } from "@fosscord/util"; +import { Router, Response, Request } from "express"; +import { route, RouteOptions } from "@fosscord/api"; + +const router = Router(); + +export interface GatewayResponse { + url: string; +} + +const options: RouteOptions = { + test: { + response: { + body: "GatewayResponse" + } + } +}; + +router.get("/", route(options), (req: Request, res: Response) => { + const { endpointPublic } = Config.get().gateway; + res.json({ url: endpointPublic || process.env.GATEWAY || "ws://localhost:3002" }); +}); + +export default router;