Spaces:
Runtime error
Runtime error
import React from 'react'; | |
import { render, fireEvent } from '@testing-library/react'; | |
import '@testing-library/jest-dom/extend-expect'; | |
import { ClearChatsButton } from './General'; | |
import { RecoilRoot } from 'recoil'; | |
describe('ClearChatsButton', () => { | |
let mockOnClick; | |
beforeEach(() => { | |
mockOnClick = jest.fn(); | |
}); | |
it('renders correctly', () => { | |
const { getByText } = render( | |
<RecoilRoot> | |
<ClearChatsButton confirmClear={false} showText={true} onClick={mockOnClick} /> | |
</RecoilRoot>, | |
); | |
expect(getByText('Clear all chats')).toBeInTheDocument(); | |
expect(getByText('Clear')).toBeInTheDocument(); | |
}); | |
it('renders confirm clear when confirmClear is true', () => { | |
const { getByText } = render( | |
<RecoilRoot> | |
<ClearChatsButton confirmClear={true} showText={true} onClick={mockOnClick} /> | |
</RecoilRoot>, | |
); | |
expect(getByText('Confirm Clear')).toBeInTheDocument(); | |
}); | |
it('calls onClick when the button is clicked', () => { | |
const { getByText } = render( | |
<RecoilRoot> | |
<ClearChatsButton confirmClear={false} showText={true} onClick={mockOnClick} /> | |
</RecoilRoot>, | |
); | |
fireEvent.click(getByText('Clear')); | |
expect(mockOnClick).toHaveBeenCalled(); | |
}); | |
}); | |