/** * @vitest-environment happy-dom */ import { describe, it, expect, beforeEach } from 'vitest'; import { render } from '@testing-library/react'; import React from 'react'; import { ScrollableList } from '../../../components/parts/ScrollableList.js'; import { Text } from 'ink'; import { Window } from 'happy-dom'; describe('ScrollableList', () => { beforeEach(() => { // Setup happy-dom const window = new Window(); globalThis.window = window as any; globalThis.document = window.document as any; }); it('should render children', () => { const { getByText } = render( Item 1 Item 2 Item 3 ); expect(getByText('Item 1')).toBeDefined(); expect(getByText('Item 2')).toBeDefined(); expect(getByText('Item 3')).toBeDefined(); }); it('should render with no children', () => { const { container } = render({null}); expect(container).toBeDefined(); }); it('should accept maxHeight prop', () => { const { container } = render( Content ); expect(container).toBeDefined(); }); it('should render in a vertical layout', () => { const { container } = render( Content ); expect(container).toBeDefined(); }); it('should handle single child', () => { const { getByText } = render( Single Item ); expect(getByText('Single Item')).toBeDefined(); }); });