import { describe, it, expect } from 'vitest'
import { render, screen } from '@testing-library/react'
import { ChatHeader } from './ChatHeader'
describe('ChatHeader', () => {
it('returns null when no header provided', () => {
const { container } = render()
expect(container.firstChild).toBeNull()
})
it('renders string header as CardTitle', () => {
render()
expect(screen.getByText('Test Title')).toBeInTheDocument()
})
it('renders custom React node header', () => {
render(Custom Header} />)
expect(screen.getByTestId('custom')).toBeInTheDocument()
expect(screen.getByText('Custom Header')).toBeInTheDocument()
})
it('renders string header inside px-6 container', () => {
render()
const title = screen.getByText('Title')
expect(title.closest('.px-6')).not.toBeNull()
})
it('renders custom header inside px-4 container', () => {
render(Custom} />)
const custom = screen.getByText('Custom')
expect(custom.closest('.px-4')).not.toBeNull()
})
})