Files
plant-disease-id/apps/web/src/components/Footer.test.tsx
2026-06-05 20:30:28 -04:00

45 lines
1.2 KiB
TypeScript

import { describe, it, expect } from "vitest";
import { render, screen } from "@testing-library/react";
import Footer from "@/components/Footer";
describe("Footer", () => {
it("renders footer element", () => {
render(<Footer />);
expect(screen.getByRole("contentinfo")).toBeInTheDocument();
});
it("renders app name", () => {
render(<Footer />);
expect(screen.getByText(/Plant Disease/i)).toBeInTheDocument();
});
it("renders navigation links", () => {
render(<Footer />);
// Should have links
const links = screen.getAllByRole("link");
expect(links.length).toBeGreaterThan(0);
});
it("renders copyright or year", () => {
render(<Footer />);
const container = screen.container;
expect(container.textContent).toMatch(/\d{4}/);
});
it("renders disclaimer text", () => {
render(<Footer />);
const container = screen.container;
expect(container.textContent).toMatch(/beta|preview|accuracy|disclaimer/i);
});
it("renders links section with nav links", () => {
render(<Footer />);
expect(screen.getByText(/Links/i)).toBeInTheDocument();
});
it("renders about section", () => {
render(<Footer />);
expect(screen.getByText(/About/i)).toBeInTheDocument();
});
});