105 lines
2.4 KiB
TypeScript
105 lines
2.4 KiB
TypeScript
import { describe, expect, it } from "bun:test";
|
|
|
|
import app from "~/index";
|
|
import { server } from "~/mocks";
|
|
|
|
server.listen();
|
|
|
|
describe('requests the "/episodes" route', () => {
|
|
it("with list of episodes from Anify", async () => {
|
|
const response = await app.request(
|
|
"/episodes/1",
|
|
{},
|
|
{
|
|
ENABLE_ANIFY: "true",
|
|
},
|
|
);
|
|
|
|
expect(response.json()).resolves.toMatchSnapshot();
|
|
});
|
|
|
|
it("Anify ID filtered out, returns no episode list from Anify", async () => {
|
|
const response = await app.request(
|
|
"/episodes/158927",
|
|
{},
|
|
{
|
|
ENABLE_ANIFY: "true",
|
|
},
|
|
);
|
|
|
|
expect(response.json()).resolves.toEqual({ success: true, result: [] });
|
|
expect(response.status).toBe(200);
|
|
});
|
|
|
|
it("Anify is disabled, returns no episode list from Anify", async () => {
|
|
const response = await app.request(
|
|
"/episodes/2",
|
|
{},
|
|
{
|
|
ENABLE_ANIFY: "false",
|
|
},
|
|
);
|
|
|
|
expect(response.json()).resolves.toEqual({ success: true, result: [] });
|
|
expect(response.status).toBe(200);
|
|
});
|
|
|
|
// it("with list of episodes from Consumet", async () => {
|
|
// const response = await app.request(
|
|
// "/episodes/3",
|
|
// {},
|
|
// {
|
|
// ENABLE_ANIFY: "true",
|
|
// },
|
|
// );
|
|
|
|
// expect(response.json()).resolves.toEqual({
|
|
// success: true,
|
|
// result: {
|
|
// providerId: "consumet",
|
|
// episodes: [
|
|
// {
|
|
// id: "consumet-1",
|
|
// number: 1,
|
|
// title: "Consumet 1",
|
|
// updatedAt: 0,
|
|
// },
|
|
// ],
|
|
// },
|
|
// });
|
|
// });
|
|
|
|
// it("with list of episodes from Aniwatch", async () => {
|
|
// const response = await app.request(
|
|
// "/episodes/4",
|
|
// {},
|
|
// {
|
|
// ENABLE_ANIFY: "true",
|
|
// },
|
|
// );
|
|
|
|
// expect(response.json()).resolves.toEqual({
|
|
// success: true,
|
|
// result: {
|
|
// providerId: "aniwatch",
|
|
// episodes: [
|
|
// {
|
|
// id: "aniwatch-1",
|
|
// number: 1,
|
|
// title: "EP 1",
|
|
// updatedAt: 0,
|
|
// img: null,
|
|
// },
|
|
// ],
|
|
// },
|
|
// });
|
|
// });
|
|
|
|
it("with no episodes from all sources", async () => {
|
|
const response = await app.request("/episodes/-1");
|
|
|
|
expect(response.json()).resolves.toEqual({ success: true, result: [] });
|
|
expect(response.status).toBe(200);
|
|
});
|
|
});
|