import { describe, it, expect, vi } from 'vitest'; import { render, screen, fireEvent } from '@testing-library/react'; import '@testing-library/jest-dom'; import TimeAdjuster from '../../src/components/tracker/TimeAdjuster'; describe('TimeAdjuster', () => { it('renders with default value', () => { const { container } = render( {}} />); const input = container.querySelector('input'); expect(input).toBeInTheDocument(); }); it('calls onTimeChange when value changes', () => { const handleChange = vi.fn(); const { container } = render(); const input = container.querySelector('input'); vi.clearAllMocks(); fireEvent.change(input!, { target: { value: '2024-01-01T12:00' } }); expect(handleChange).toHaveBeenCalledWith(new Date('2024-01-01T12:00').toISOString()); }); it('resets to now when reset button is clicked', async () => { const handleChange = vi.fn(); render(); const resetButton = screen.getByText(/Reset to now/i); fireEvent.click(resetButton); expect(handleChange).toHaveBeenCalled(); }); });