import { render, screen } from '@testing-library/react'; import { describe, it, expect } from 'vitest'; import { LogoCloud } from './LogoCloud'; import React from 'react'; const logos = [ { src: '/logos/acme.svg', alt: 'Acme Corp' }, { src: '/logos/globex.svg', alt: 'Globex' }, { src: '/logos/initech.svg', alt: 'Initech' }, ]; describe('LogoCloud', () => { it('renders an image for each logo with the correct alt text', () => { render(); logos.forEach(logo => { const img = screen.getByAltText(logo.alt); expect(img).toBeInTheDocument(); expect(img).toHaveAttribute('src', logo.src); }); }); it('renders the title when provided', () => { render(); expect(screen.getByText('Trusted by leading teams')).toBeInTheDocument(); }); it('omits the title when not provided', () => { render(); expect(screen.queryByText('Trusted by leading teams')).not.toBeInTheDocument(); }); it('renders exactly as many images as logos provided', () => { render(); expect(screen.getAllByRole('img')).toHaveLength(3); }); it('applies a custom className to the wrapper', () => { const { container } = render(); expect(container.firstChild).toHaveClass('custom-logocloud'); }); });