# Plan: Agregar guard de `disabled` al handler `onClick` en Button ## Contexto El componente `Button` (`src/components/Button/index.tsx`) ya expone una prop `onClick`, pero la implementación no verifica el estado `disabled` antes de ejecutar el handler. El test existente (`Button.test.tsx` línea 21-27) espera que `onClick` **no se llame** cuando el botón está disabled, pero la implementación actual no tiene esa protección. ## Cambios ### 1. `src/components/Button/index.tsx` — Agregar guard disabled en onClick En el render del ` ``` También agregar el guard para el caso `file-upload` (línea 71), donde `onChange` del input file también debería respetar `disabled`. ### 2. `src/components/Button/__tests__/Button.test.tsx` — Agregar test positivo Agregar un test que verifique que `onClick` **sí se llama** cuando el botón está habilitado y se hace click: ```tsx it('calls onClick handler when enabled and clicked', () => { const handleClick = jest.fn(); render(); const button = screen.getByRole('button', { name: /click me/i }); button.click(); expect(handleClick).toHaveBeenCalledTimes(1); }); ``` ### 3. `src/components/Button/Button.stories.tsx` — Story de onClick Agregar una Story que demuestre el uso de `onClick` con una función callback simple, para que sea visible en Storybook. ## Archivos a modificar - `src/components/Button/index.tsx` - `src/components/Button/__tests__/Button.test.tsx` - `src/components/Button/Button.stories.tsx` ## Verificación ```bash npm test -- --testPathPattern="Button.test" --coverage ``` Confirmar que todos los tests de Button pasan y que el coverage se mantiene.