Tests refactor
This commit is contained in:
parent
245520fb50
commit
99134d8556
165 changed files with 911 additions and 531 deletions
|
|
@ -0,0 +1,34 @@
|
|||
import { describe, it, expect } from 'vitest';
|
||||
import { render, screen, fireEvent } from '@testing-library/react';
|
||||
import { PageHeaderProvider, usePageHeader } from '../../../src/components/layout/PageHeaderContext';
|
||||
|
||||
function TestComponent() {
|
||||
const { header, setHeader } = usePageHeader();
|
||||
return (
|
||||
<div>
|
||||
<span data-testid="title">{header.title}</span>
|
||||
<button onClick={() => setHeader({ title: 'New Title' })}>Change</button>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
describe('PageHeaderContext', () => {
|
||||
it('provides and updates header state', () => {
|
||||
render(
|
||||
<PageHeaderProvider>
|
||||
<TestComponent />
|
||||
</PageHeaderProvider>
|
||||
);
|
||||
|
||||
expect(screen.getByTestId('title').textContent).toBe('MeshiTrack');
|
||||
|
||||
fireEvent.click(screen.getByText('Change'));
|
||||
expect(screen.getByTestId('title').textContent).toBe('New Title');
|
||||
});
|
||||
|
||||
it('returns fallback when used outside provider', () => {
|
||||
render(<TestComponent />);
|
||||
// Outside provider title returns '' fallback
|
||||
expect(screen.getByTestId('title').textContent).toBe('');
|
||||
});
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue