- Introduced smoke tests for Login, Register, Password Reset, Password Reset Confirm, and Settings pages. - Enhanced test coverage for all dynamic imports using mocks and added Jest exclusions for non-testable Next.js files. - Added component-specific test files for better structure and maintainability. - Improved test isolation by mocking navigation, providers, and rendering contexts.
26 lines
632 B
TypeScript
26 lines
632 B
TypeScript
/**
|
|
* Tests for Settings Index Page
|
|
* Verifies redirect behavior
|
|
*/
|
|
|
|
import { redirect } from 'next/navigation';
|
|
import SettingsPage from '@/app/(authenticated)/settings/page';
|
|
|
|
// Mock Next.js navigation - redirect throws to interrupt execution
|
|
jest.mock('next/navigation', () => ({
|
|
redirect: jest.fn(() => {
|
|
throw new Error('NEXT_REDIRECT');
|
|
}),
|
|
}));
|
|
|
|
describe('SettingsPage', () => {
|
|
beforeEach(() => {
|
|
jest.clearAllMocks();
|
|
});
|
|
|
|
it('redirects to /settings/profile', () => {
|
|
expect(() => SettingsPage()).toThrow('NEXT_REDIRECT');
|
|
expect(redirect).toHaveBeenCalledWith('/settings/profile');
|
|
});
|
|
});
|