27 lines
829 B
TypeScript
27 lines
829 B
TypeScript
import { fireEvent, render, screen } from '@testing-library/react'
|
|
import { describe, expect, it, vi } from 'vitest'
|
|
import FloatingButton from './FloatingButton'
|
|
|
|
describe('FloatingButton', () => {
|
|
it('renders a + button', () => {
|
|
render(<FloatingButton onClick={vi.fn()} />)
|
|
|
|
expect(screen.getByRole('button', { name: 'Créer une note' })).toHaveTextContent('+')
|
|
})
|
|
|
|
it('calls onClick when clicked', () => {
|
|
const onClick = vi.fn()
|
|
render(<FloatingButton onClick={onClick} />)
|
|
|
|
fireEvent.click(screen.getByRole('button', { name: 'Créer une note' }))
|
|
|
|
expect(onClick).toHaveBeenCalled()
|
|
})
|
|
|
|
it('uses a custom label when provided', () => {
|
|
render(<FloatingButton onClick={vi.fn()} label="Ajouter" />)
|
|
|
|
expect(screen.getByRole('button', { name: 'Ajouter' })).toBeInTheDocument()
|
|
})
|
|
})
|