import { describe, expect, it } from "bun:test"; import app from "~/index"; import { server } from "~/mocks"; server.listen(); describe('requests the "/episodes/:id/url" route', () => { it("with sources from Aniwatch", async () => { const response = await app.request( "/episodes/4/url", { method: "POST", body: JSON.stringify({ episodeNumber: 1, }), headers: { "Content-Type": "application/json" }, }, { ENABLE_ANIFY: "true", }, ); expect(response.json()).resolves.toEqual({ success: true, result: { source: "https://www032.vipanicdn.net/streamhls/aa804a2400535d84dd59454b28d329fb/ep.1.1712504065.m3u8", subtitles: [], audio: [], }, }); }); it("with no URL from Aniwatch source", async () => { const response = await app.request("/episodes/-1/url", { method: "POST", body: JSON.stringify({ episodeNumber: -1, }), headers: { "Content-Type": "application/json" }, }); expect(response.json()).resolves.toEqual({ success: false }); expect(response.status).toBe(404); }); });