test: query client cache

pull/2827/head
Anderson Shindy Oki 4 weeks ago
parent 838b61bf0e
commit fe723f05bf

@ -0,0 +1,60 @@
import { http } from "msw";
import { HttpResponse } from "msw";
import { render, screen, waitFor } from "@/tests";
import server from "@/tests/mocks/node";
import BlacklistMoviesView from ".";
describe("Blacklist Movies", () => {
it("should render with blacklisted movies", async () => {
server.use(
http.get("/api/movies/blacklist", () => {
return HttpResponse.json({
data: [
{
title: "Batman vs Teenage Mutant Ninja Turtles",
radarrId: 50,
provider: "yifysubtitles",
subs_id:
"https://yifysubtitles.ch/subtitles/batman-vs-teenage-mutant-ninja-turtles-2019-english-yify-19252",
language: {
name: "English",
code2: "en",
code3: "eng",
forced: false,
hi: false,
},
timestamp: "28 seconds ago",
parsed_timestamp: "01/23/25 05:39:36",
},
],
});
}),
);
render(<BlacklistMoviesView />);
await waitFor(() => {
expect(screen.getByText("yifysubtitles")).toBeInTheDocument();
});
});
it("should render without blacklisted movies", async () => {
server.use(
http.get("/api/movies/blacklist", () => {
return HttpResponse.json({
data: [],
});
}),
);
render(<BlacklistMoviesView />);
await waitFor(() => {
expect(
screen.getByText("No blacklisted movies subtitles"),
).toBeInTheDocument();
});
server.resetHandlers();
});
});

@ -1,37 +0,0 @@
import { http } from "msw";
import { HttpResponse } from "msw";
import server from "@/tests/mocks/node";
import { renderTest, RenderTestCase } from "@/tests/render";
import BlacklistMoviesView from "./Movies";
import BlacklistSeriesView from "./Series";
const cases: RenderTestCase[] = [
{
name: "movie page",
ui: BlacklistMoviesView,
setupEach: () => {
server.use(
http.get("/api/movies/blacklist", () => {
return HttpResponse.json({
data: [],
});
}),
);
},
},
{
name: "series page",
ui: BlacklistSeriesView,
setupEach: () => {
server.use(
http.get("/api/episodes/blacklist", () => {
return HttpResponse.json({
data: [],
});
}),
);
},
},
];
renderTest("Blacklist", cases);

@ -4,6 +4,7 @@ import { http } from "msw";
import { HttpResponse } from "msw";
import { vi, vitest } from "vitest";
import "@testing-library/jest-dom";
import queryClient from "@/apis/queries";
import server from "./mocks/node";
vi.mock("recharts", async () => {
@ -45,7 +46,10 @@ window.scrollTo = () => {};
beforeAll(() => {
server.listen({ onUnhandledRequest: "error" });
});
beforeEach(() => {
server.resetHandlers();
server.use(
http.get("/api/system/settings", () => {
return HttpResponse.json({
@ -57,6 +61,10 @@ beforeAll(() => {
);
});
afterEach(() => server.resetHandlers());
afterEach(() => {
server.resetHandlers();
queryClient.clear();
});
afterAll(() => server.close());

Loading…
Cancel
Save