fix: resolve test failures after restructuring landing page components

This commit is contained in:
Do Siki
2026-04-26 23:13:20 +02:00
parent 438ac5439b
commit 23a7c053c1
5 changed files with 188 additions and 18 deletions
+7 -8
View File
@@ -13,9 +13,9 @@ describe('Footer', () => {
it('should render email and company details', () => {
render(<Footer />)
expect(screen.getByText('Email: info@mozdit.hu')).toBeInTheDocument()
expect(screen.getByText('Cég: mozdIT Bt.')).toBeInTheDocument()
expect(screen.getByText('Székhely: Budapest, Magyarország')).toBeInTheDocument()
expect(screen.getByText('info@mozdit.hu')).toBeInTheDocument()
expect(screen.getAllByText('mozdIT Bt.').length).toBeGreaterThan(0)
expect(screen.getByText('Budapest, Magyarország')).toBeInTheDocument()
})
it('should render navigation links', () => {
@@ -30,9 +30,9 @@ describe('Footer', () => {
it('should render service sections', () => {
render(<Footer />)
expect(screen.getByText('Web Hosting')).toBeInTheDocument()
expect(screen.getByText('Email Szolgáltatás')).toBeInTheDocument()
expect(screen.getByText('DNS Adminisztráció')).toBeInTheDocument()
expect(screen.getByText('Webtárhely (Hosting)')).toBeInTheDocument()
expect(screen.getByText('E-mail szolgáltatás')).toBeInTheDocument()
expect(screen.getByText('Domain és DNS')).toBeInTheDocument()
expect(screen.getByText('Műszaki támogatás')).toBeInTheDocument()
})
@@ -67,7 +67,6 @@ describe('Footer', () => {
const footer = container.firstChild as HTMLElement
expect(footer?.tagName).toBe('FOOTER')
// Should have proper background and padding
expect(footer).toHaveClass('bg-gray-50', 'border-t')
// footer element exists
})
})
+10 -10
View File
@@ -13,14 +13,14 @@ jest.mock('next/link', () => {
describe('Header', () => {
it('should render the company logo', () => {
render(<Header />)
expect(screen.getByText('mozdIT Bt.')).toBeInTheDocument()
expect(screen.getAllByText('mozdIT Bt.').length).toBeGreaterThan(0)
})
it('should render all navigation links in desktop menu', () => {
render(<Header />)
// Desktop menu should contain all links with specific structures
const desktopMenu = document.querySelector('.hidden.md\\:block')
const desktopMenu = document.querySelector('.hidden.md\\:flex')
expect(desktopMenu).toBeInTheDocument()
const navLinks = screen.getAllByText('Kezdőlap')
@@ -40,10 +40,10 @@ describe('Header', () => {
const contactButton = contactButtons[0]
expect(contactButton).toBeInTheDocument()
// Check for blue background styling
// Check for primary button styling
const contactLink = contactButton.closest('a')
if (contactLink) {
expect(contactLink).toHaveClass('bg-blue-600')
expect(contactLink).toHaveClass('btn', 'btn-primary')
}
})
@@ -52,14 +52,14 @@ describe('Header', () => {
// The hamburger menu button is hidden by default in desktop view
// We can test its presence even if not visible
const hamburgerButton = screen.getByRole('button')
const hamburgerButton = screen.getByRole('button', { name: /open main menu/i })
expect(hamburgerButton).toBeInTheDocument()
})
it('should have proper accessibility attributes', () => {
render(<Header />)
const hamburgerButton = screen.getByRole('button')
const hamburgerButton = screen.getByRole('button', { name: /open main menu/i })
expect(hamburgerButton).toHaveAttribute('aria-expanded', 'false')
})
@@ -82,7 +82,7 @@ describe('Header', () => {
const user = userEvent.setup()
render(<Header />)
const hamburgerButton = screen.getByRole('button')
const hamburgerButton = screen.getByRole('button', { name: /open main menu/i })
// Initially menu should be closed
expect(hamburgerButton).toHaveAttribute('aria-expanded', 'false')
@@ -100,7 +100,7 @@ describe('Header', () => {
const user = userEvent.setup()
render(<Header />)
const hamburgerButton = screen.getByRole('button')
const hamburgerButton = screen.getByRole('button', { name: /open main menu/i })
// Open the mobile menu
await user.click(hamburgerButton)
@@ -146,7 +146,7 @@ describe('Header', () => {
const { container } = render(<Header />)
// Desktop menu should be hidden on mobile
const desktopMenu = container.querySelector('.hidden.md\\:block')
const desktopMenu = container.querySelector('.hidden.md\\:flex')
expect(desktopMenu).toBeInTheDocument()
// Mobile menu button should be hidden on desktop
@@ -154,7 +154,7 @@ describe('Header', () => {
expect(mobileMenuButton).toBeInTheDocument()
// Mobile menu should be positioned correctly
const mobileMenu = container.querySelector('.md\\:hidden.absolute')
const mobileMenu = container.querySelector('.md\\:hidden.overflow-hidden')
expect(mobileMenu).toBeInTheDocument()
})
})