forked from cardosofelipe/fast-next-template
- Consolidated multi-line arguments into single lines where appropriate in `useAuth`. - Improved spacing and readability in data processing across components (`ProfileSettingsForm`, `PasswordChangeForm`, `SessionCard`). - Applied consistent table and markdown formatting in design system docs (e.g., `README.md`, `08-ai-guidelines.md`, `00-quick-start.md`). - Updated code snippets to ensure adherence to Prettier rules and streamlined JSX structures.
36 lines
992 B
TypeScript
36 lines
992 B
TypeScript
/**
|
|
* Tests for Footer Component
|
|
* Verifies footer rendering and content
|
|
*/
|
|
|
|
import { render, screen } from '@testing-library/react';
|
|
import { Footer } from '@/components/layout/Footer';
|
|
|
|
describe('Footer', () => {
|
|
describe('Rendering', () => {
|
|
it('renders footer element', () => {
|
|
const { container } = render(<Footer />);
|
|
|
|
const footer = container.querySelector('footer');
|
|
expect(footer).toBeInTheDocument();
|
|
});
|
|
|
|
it('displays copyright text with current year', () => {
|
|
render(<Footer />);
|
|
|
|
const currentYear = new Date().getFullYear();
|
|
expect(
|
|
screen.getByText(`© ${currentYear} FastNext Template. All rights reserved.`)
|
|
).toBeInTheDocument();
|
|
});
|
|
|
|
it('applies correct styling classes', () => {
|
|
const { container } = render(<Footer />);
|
|
|
|
const footer = container.querySelector('footer');
|
|
expect(footer).toHaveClass('border-t');
|
|
expect(footer).toHaveClass('bg-muted/30');
|
|
});
|
|
});
|
|
});
|