diff --git a/packages/web/src/app/sessions/[id]/loading.test.tsx b/packages/web/src/app/sessions/[id]/loading.test.tsx new file mode 100644 index 000000000..da87ae0f6 --- /dev/null +++ b/packages/web/src/app/sessions/[id]/loading.test.tsx @@ -0,0 +1,17 @@ +import { render, screen } from "@testing-library/react"; +import { describe, it, expect } from "vitest"; +import SessionLoading from "./loading"; + +describe("SessionLoading", () => { + it("renders the session loading text", () => { + render(); + expect(screen.getByText("Loading session…")).toBeInTheDocument(); + }); + + it("renders a spinning indicator", () => { + const { container } = render(); + const spinner = container.querySelector(".animate-spin"); + expect(spinner).toBeInTheDocument(); + expect(spinner?.tagName.toLowerCase()).toBe("svg"); + }); +}); diff --git a/packages/web/src/app/sessions/[id]/loading.tsx b/packages/web/src/app/sessions/[id]/loading.tsx new file mode 100644 index 000000000..d81ee937a --- /dev/null +++ b/packages/web/src/app/sessions/[id]/loading.tsx @@ -0,0 +1,20 @@ +export default function SessionLoading() { + return ( +
+
+ + + +

+ Loading session… +

+
+
+ ); +}