diff --git a/frontend/src/App/app.test.tsx b/frontend/src/App/app.test.tsx
index db9895305..06aafaf86 100644
--- a/frontend/src/App/app.test.tsx
+++ b/frontend/src/App/app.test.tsx
@@ -1,9 +1,18 @@
+import { http } from "msw";
+import { HttpResponse } from "msw";
import { describe, it } from "vitest";
import { render } from "@/tests";
+import server from "@/tests/mocks/node";
import App from ".";
describe("App", () => {
it("should render without crash", () => {
+ server.use(
+ http.get("/api/system/searches", () => {
+ return HttpResponse.json({});
+ }),
+ );
+
render();
});
});
diff --git a/frontend/src/pages/Settings/components/Section.test.tsx b/frontend/src/pages/Settings/components/Section.test.tsx
index 4e8e8032a..90322488b 100644
--- a/frontend/src/pages/Settings/components/Section.test.tsx
+++ b/frontend/src/pages/Settings/components/Section.test.tsx
@@ -1,24 +1,12 @@
import { Text } from "@mantine/core";
-import { http, HttpResponse } from "msw";
import { describe, it } from "vitest";
import { render, screen } from "@/tests";
-import server from "@/tests/mocks/node";
import { Section } from "./Section";
describe("Settings section", () => {
const header = "Section Header";
it("should show header", () => {
- server.use(
- http.get("/api/system/settings", () => {
- return HttpResponse.json({
- general: {
- theme: "auto",
- },
- });
- }),
- );
-
render();
expect(screen.getByText(header)).toBeDefined();
diff --git a/frontend/src/tests/render.tsx b/frontend/src/tests/render.tsx
index e0031e903..72a79b34c 100644
--- a/frontend/src/tests/render.tsx
+++ b/frontend/src/tests/render.tsx
@@ -1,4 +1,7 @@
import { FunctionComponent } from "react";
+import { HttpResponse } from "msw";
+import { http } from "msw";
+import server from "./mocks/node";
import { render } from ".";
export interface RenderTestCase {
@@ -8,6 +11,50 @@ export interface RenderTestCase {
export function renderTest(name: string, cases: RenderTestCase[]) {
describe(name, () => {
+ beforeEach(() => {
+ server.use(
+ http.get("/api/movies/history", () => {
+ return HttpResponse.json({});
+ }),
+ http.get("/api/episodes/history", () => {
+ return HttpResponse.json({});
+ }),
+ http.get("/api/system/searches", () => {
+ return HttpResponse.json({});
+ }),
+ http.get("/api/providers", () => {
+ return HttpResponse.json({
+ data: [
+ {
+ name: "Provider 1",
+ retry: "-",
+ status: "History",
+ },
+ ],
+ });
+ }),
+ http.get("/api/system/languages", () => {
+ return HttpResponse.json({});
+ }),
+ http.get("/api/history/stats", () => {
+ return HttpResponse.json({
+ movies: [
+ {
+ date: "2025-01-17",
+ count: 1,
+ },
+ ],
+ series: [
+ {
+ date: "2025-01-17",
+ count: 1,
+ },
+ ],
+ });
+ }),
+ );
+ });
+
cases.forEach((element) => {
it(`${element.name.toLowerCase()} should render`, () => {
render();
diff --git a/frontend/src/tests/setup.ts b/frontend/src/tests/setup.ts
index 25b13df48..8054df7ac 100644
--- a/frontend/src/tests/setup.ts
+++ b/frontend/src/tests/setup.ts
@@ -1,5 +1,7 @@
/* eslint-disable @typescript-eslint/no-empty-function */
+import { http } from "msw";
+import { HttpResponse } from "msw";
import { vitest } from "vitest";
import "@testing-library/jest-dom";
import server from "./mocks/node";
@@ -32,6 +34,16 @@ window.scrollTo = () => {};
beforeAll(() => {
server.listen({ onUnhandledRequest: "error" });
+
+ server.use(
+ http.get("/api/system/settings", () => {
+ return HttpResponse.json({
+ general: {
+ theme: "auto",
+ },
+ });
+ }),
+ );
});
afterEach(() => server.resetHandlers());