import { render, screen, within } from "@testing-library/react"; import { metadata as rootMetadata } from "../layout"; import CurriculoPage from "./page"; jest.mock("next/font/google", () => ({ Geist_Mono: () => ({ variable: "font-geist-mono" }), Space_Grotesk: () => ({ variable: "font-space-grotesk" }), })); jest.mock("next/font/local", () => () => ({ variable: "font-monument-extended", })); const authorizedRegion = "Base em Garuva, atendimento a projetos no Norte de Santa Catarina e atuação remota."; it("uses one factual regional description across home metadata", () => { const description = rootMetadata.description; expect(typeof description).toBe("string"); expect(description).toContain(authorizedRegion); expect(description).not.toMatch( /Joinville|São Francisco do Sul|Itapoá|Jaraguá do Sul|Curitiba/, ); expect(rootMetadata.openGraph).toMatchObject({ description }); expect(rootMetadata.twitter).toMatchObject({ description }); }); it("shows a matching breadcrumb and keeps consulting secondary to hiring", () => { render(CurriculoPage()); const breadcrumb = screen.getByRole("navigation", { name: "Breadcrumb" }); const breadcrumbLinks = within(breadcrumb).getAllByRole("link"); expect(breadcrumbLinks.map((link) => link.textContent)).toEqual([ "Início", "Currículo", ]); expect(breadcrumbLinks[0]).toHaveAttribute("href", "/"); expect(breadcrumbLinks[1]).toHaveAttribute("href", "/curriculo"); expect(breadcrumbLinks[1]).toHaveAttribute("aria-current", "page"); const hiringLink = screen.getByRole("link", { name: /oportunidade/i }); const consultingLink = screen.getByRole("link", { name: /consultoria/i }); expect(hiringLink).toHaveAttribute("href", "/#contact"); expect(consultingLink).toHaveAttribute("href", "/servicos"); expect( hiringLink.compareDocumentPosition(consultingLink) & Node.DOCUMENT_POSITION_FOLLOWING, ).toBeTruthy(); });