123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- import { checkTranslationProps, sendReq } from "./hooks";
- describe("Translation routes", () => {
- //#region inv /tr
- it("Translations path without ID yields error", async () => {
- const { res, status } = await sendReq("/translations");
- const body = await res.json();
- expect(status).toBe(400);
- expect(body?.error).toEqual(true);
- expect(body?.matches).toEqual(null);
- expect(body?.message).toBeDefined();
- });
- //#region /tr/:id
- it("Translation yields correct props", async () => {
- const { res, status } = await sendReq("/translations/7105950");
- const body = await res.json();
- expect(status).toBe(200);
- expect(body?.error).toEqual(false);
- expect(body?.matches).toBeGreaterThan(0);
- expect(Array.isArray(body?.translations)).toBe(true);
- body?.translations?.forEach((tr: unknown) => checkTranslationProps(tr));
- });
- //#region inv /tr/:id
- it("Invalid song ID yields no matches", async () => {
- const { res, status } = await sendReq("/translations/0");
- const body = await res.json();
- expect(status).toBe(200);
- expect(body?.error).toEqual(false);
- expect(body?.matches).toEqual(0);
- expect(body?.message).toBeUndefined();
- });
- });
|