mirror of
https://github.com/fsolla/teqo.git
synced 2026-11-14 17:35:18 +00:00
Home abre no agradecimento pelos 152.049 votos com board 1+3, trajetória, bandeiras do mandato, galeria de fotos e rodapé institucional; chrome novo (header home/interno, lockup de nome, menu mobile acessível) e /artigos//fotos com título compacto. As superfícies de campanha saem do ar (308 de /conteudos, /jingles e /cards), junto com newsletter, estúdio público de cards e UI da Central/jingles; download de foto e .ics perdem o 1313. Sem migration, sem Consent novo e sem apagar dados do CMS.
48 lines
2 KiB
TypeScript
48 lines
2 KiB
TypeScript
import { cleanup, render, screen } from '@testing-library/react'
|
|
import { afterEach, describe, expect, it, vi } from 'vitest'
|
|
|
|
import { CampaignFooter } from '@/components/CampaignFooter'
|
|
|
|
type MockImageProps = React.ImgHTMLAttributes<HTMLImageElement> & { priority?: boolean }
|
|
|
|
vi.mock('next/image', () => ({
|
|
default: ({ alt, priority: _priority, ...props }: MockImageProps) => (
|
|
// eslint-disable-next-line @next/next/no-img-element
|
|
<img alt={alt} {...props} />
|
|
),
|
|
}))
|
|
|
|
afterEach(cleanup)
|
|
|
|
describe('CampaignFooter', () => {
|
|
it('é institucional: navegação, redes e assinatura, sem bloco eleitoral', () => {
|
|
const { container } = render(<CampaignFooter current="artigos" />)
|
|
|
|
expect(screen.getByRole('link', { name: 'Artigos' }).getAttribute('aria-current')).toBe('page')
|
|
expect(screen.getByRole('link', { name: 'Fotos' }).getAttribute('href')).toBe('/fotos')
|
|
expect(screen.getByRole('link', { name: 'Privacidade' }).getAttribute('href')).toBe(
|
|
'/privacidade',
|
|
)
|
|
expect(screen.getByRole('link', { name: 'Instagram' }).getAttribute('href')).toBe(
|
|
'https://instagram.com/depjorgesolla',
|
|
)
|
|
expect(screen.getByRole('link', { name: 'YouTube' }).getAttribute('href')).toBe(
|
|
'https://youtube.com/@JorgeSollaDep',
|
|
)
|
|
expect(screen.getByRole('link', { name: 'Facebook' }).getAttribute('href')).toBe(
|
|
'https://facebook.com/depjorgesolla',
|
|
)
|
|
expect(screen.getByText(/Deputado Federal · PT · Bahia/)).toBeTruthy()
|
|
expect(screen.getByText('Mais Saúde, Mais Futuro.')).toBeTruthy()
|
|
|
|
expect(container.textContent).not.toContain('1313')
|
|
expect(container.textContent).not.toMatch(/CNPJ|1º turno|Quero apoiar|propaganda eleitoral/i)
|
|
})
|
|
|
|
it('marca Fotos como seção atual quando pedido', () => {
|
|
render(<CampaignFooter current="fotos" />)
|
|
|
|
expect(screen.getByRole('link', { name: 'Fotos' }).getAttribute('aria-current')).toBe('page')
|
|
expect(screen.getByRole('link', { name: 'Artigos' }).getAttribute('aria-current')).toBeNull()
|
|
})
|
|
})
|