import { describe, it, expect } from 'vitest'; import { render } from '@testing-library/react'; import { FloorplanTile } from './FloorplanTile'; const svg = (children: React.ReactNode) => { children }; describe('FloorplanTile', () => { it('renders nothing for blocked tile by default', () => { const { container } = render(svg()); expect(container.querySelector('polygon')).toBeNull(); }); it('renders a polygon for non-blocked tile', () => { const { container } = render(svg()); const poly = container.querySelector('polygon'); expect(poly).toBeTruthy(); expect(poly?.getAttribute('fill')).toMatch(/^#/); expect(poly?.getAttribute('points')?.split(' ')).toHaveLength(4); }); it('renders a door marker when isDoor=true', () => { const { container } = render(svg()); expect(container.querySelector('[data-testid="door-marker"]')).toBeTruthy(); }); it('applies selection ring when selected', () => { const { container } = render(svg()); expect(container.querySelector('[data-testid="selection-ring"]')).toBeTruthy(); }); });