// Test med axe https://www.npmjs.com/package/jest-axe import '@testing-library/jest-dom' import { axe, toHaveNoViolations } from 'jest-axe' import { render } from '../../utils/test-utils' import { PktFooterSimple } from './FooterSimple' expect.extend(toHaveNoViolations) describe('PktFooterSimple', () => { const links = [ { href: 'https://www.example.com', text: 'Example Link 1' }, { href: 'https://www.example.com', text: 'Example Link 2' }, { href: 'https://www.example.com', text: 'Example Link 3' }, ] describe('basic rendering', () => { it('renders a list of links', () => { const { getByText } = render() links.forEach((link) => { expect(getByText(link.text)).toBeInTheDocument() expect(getByText(link.text).getAttribute('href')).toEqual(link.href) }) }) it('renders an external link with an external class', () => { const links = [{ href: 'https://www.example.com', text: 'Example Link', external: true }] const { getByText } = render() expect(getByText(links[0].text)).toHaveClass('pkt-link--external') }) it('renders a privacy link', () => { const { getByText } = render() expect(getByText('Personvern og informasjonskapsler')).toBeInTheDocument() expect(getByText('Personvern og informasjonskapsler').getAttribute('href')).toEqual( 'https://www.oslo.kommune.no/personvern-og-informasjonskapsler/', ) }) it('renders an accessibility link', () => { const { getByText } = render() expect(getByText('Tilgjengelighet')).toBeInTheDocument() expect(getByText('Tilgjengelighet').getAttribute('href')).toEqual('https://www.oslo.kommune.no/tilgjengelighet/') }) }) describe('accessibility', () => { it('renders with no wcag errors with axe', async () => { const { container } = render() const results = await axe(container) expect(results).toHaveNoViolations() }) }) })