import React from 'react'; import { describe, it, expect } from 'vitest'; import { render, screen } from '@testing-library/react'; import { PixelColorSwatch } from '../../data/PixelColorSwatch'; describe('PixelColorSwatch — rendering', () => { it('renders the token name and the CSS var label', () => { render(); expect(screen.getByText('Cyan 500')).toBeInTheDocument(); expect(screen.getByText('--retro-cyan')).toBeInTheDocument(); }); it('paints the preview square with backgroundColor var()', () => { const { container } = render( , ); const square = container.querySelector('div.h-8.w-8') as HTMLElement; expect(square).not.toBeNull(); expect(square.style.backgroundColor).toBe('var(--retro-gold)'); }); }); describe('PixelColorSwatch — surface', () => { it('default pixel surface uses border-2 + staircase corner on the square', () => { const { container } = render( , ); const square = container.querySelector('div.h-8.w-8') as HTMLElement; expect(square.className).toContain('border-2'); expect(square.className).toContain('pxl-corner-sm'); }); it('surface="linear" uses rounded corner + thin border on the square', () => { const { container } = render( , ); const square = container.querySelector('div.h-8.w-8') as HTMLElement; expect(square.className).toContain('rounded-md'); expect(square.className).not.toContain('border-2'); }); });