import React from 'react' import { renderWithProviders, screen } from '@/__tests__/utils/test-helpers' import Stats from './stats' describe('Stats Component', () => { it('should render stats section with heading', () => { renderWithProviders() expect(screen.getByText('Trusted by Creators')).toBeInTheDocument() }) it('should display description', () => { renderWithProviders() expect(screen.getByText(/portfolio host is the platform of choice/i)).toBeInTheDocument() }) it('should display all default stats', () => { renderWithProviders() expect(screen.getByText(/portfolios hosted/i)).toBeInTheDocument() expect(screen.getByText(/uptime guarantee/i)).toBeInTheDocument() expect(screen.getByText(/active users/i)).toBeInTheDocument() expect(screen.getByText(/average deploy time/i)).toBeInTheDocument() }) it('should display stat values', () => { renderWithProviders() expect(screen.getByText('10,000+')).toBeInTheDocument() expect(screen.getByText('99.9%')).toBeInTheDocument() expect(screen.getByText('50,000+')).toBeInTheDocument() }) it('should accept custom stats', () => { const customStats = [ { id: 'custom', label: 'Custom Stat', value: '999' }, ] renderWithProviders() expect(screen.getByText('Custom Stat')).toBeInTheDocument() expect(screen.getByText('999')).toBeInTheDocument() }) it('should have responsive grid layout', () => { const { container } = renderWithProviders() const grid = container.querySelector('.grid') expect(grid).toHaveClass('grid-cols-1', 'md:grid-cols-2', 'lg:grid-cols-4') }) it('should have gradient background', () => { const { container } = renderWithProviders() const section = container.querySelector('section') expect(section).toHaveClass('bg-gradient-to-r', 'from-purple-600', 'to-pink-600') }) it('should display stats with proper spacing', () => { const { container } = renderWithProviders() const section = container.querySelector('section') expect(section).toHaveClass('py-16', 'md:py-24') }) })