From d47a1eaf038cf23f011dfaecd6c20508100e9789 Mon Sep 17 00:00:00 2001 From: brain-marchine <152466993+brain-marchine@users.noreply.github.com> Date: Sun, 12 Jul 2026 17:04:50 +0800 Subject: [PATCH] test: cover pair-meta PATCH enabled validation Fixes #15 --- src/__tests__/pairMetaEnabled.test.ts | 34 +++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/__tests__/pairMetaEnabled.test.ts diff --git a/src/__tests__/pairMetaEnabled.test.ts b/src/__tests__/pairMetaEnabled.test.ts new file mode 100644 index 0000000..f8dc66b --- /dev/null +++ b/src/__tests__/pairMetaEnabled.test.ts @@ -0,0 +1,34 @@ +import request from "supertest"; +import app from "../index"; +import { resetStores } from "../stores"; + +describe("PATCH /api/v1/pairs/:source/:destination/enabled", () => { + beforeEach(() => { + resetStores(); + }); + + it("toggles enabled flag with a boolean body", async () => { + await request(app).post("/api/v1/pairs").send({ source: "USDC", destination: "EURC" }); + const res = await request(app) + .patch("/api/v1/pairs/USDC/EURC/enabled") + .send({ enabled: false }); + expect(res.status).toBe(200); + expect(res.body.enabled).toBe(false); + }); + + it("rejects non-boolean enabled values", async () => { + await request(app).post("/api/v1/pairs").send({ source: "USDC", destination: "EURC" }); + const res = await request(app) + .patch("/api/v1/pairs/USDC/EURC/enabled") + .send({ enabled: "yes" }); + expect(res.status).toBe(400); + expect(res.body.error).toBe("invalid_request"); + }); + + it("returns 404 for unregistered pairs", async () => { + const res = await request(app) + .patch("/api/v1/pairs/AAA/BBB/enabled") + .send({ enabled: true }); + expect(res.status).toBe(404); + }); +});