[ADN] Fase 10: Saneamiento y Consolidación - Un solo punto de verdad

- S1: Eliminar 'triggers' duplicado en run (líneas 109/131)
- S2: Eliminar cli/commit.rb (truncado, sin uso)
- S3: Eliminar cli/inicio.rb y cli/cierre.rb (legacy, jornada.rb los reemplaza)
- S4: Mover 4 planes obsoletos de docs/plan/adn/ a docs/_hist/plan/adn/
- S5: Mover 14 backups de planes y 3 docs técnicos a docs/_hist/
- S6: Eliminar manifiesto vacío P2604_proyecto_p2604.md
- S7: Corregir referencia a plan obsoleto en run
- S8: Dejar de cargar core/validador.rb obsoleto en run
- S9: Limpiar progreso duplicado en P2604_mejoras_ADN.md
- Agregar Fase 10 al plan P2604 con 10 tareas
- Un solo punto de verdad: adn/README.md
- Un solo plan: docs/proy/p2604_mejoras_ADN/P2604_mejoras_ADN.md
- Registro en bitácora: evento 1073
This commit is contained in:
Ricardo Monla
2026-03-15 14:33:32 -03:00
parent b13a389568
commit cfd0e8452a
36 changed files with 1563 additions and 238 deletions
+83
View File
@@ -0,0 +1,83 @@
# Guía de Testing ADN
> Cómo escribir tests para el sistema ADN
## Estructura de Tests
```
adn/tools/
└── spec/
├── spec_helper.rb
├── db/
│ └── evento_spec.rb
└── core/
├── colores_spec.rb
└── validador_spec.rb
```
## Ejecutar Tests
```bash
cd adn/tools
# Todos los tests
bundle exec rspec
# Un archivo específico
bundle exec rspec spec/db/evento_spec.rb
# Con output detallado
bundle exec rspec --format documentation
```
## Escribir un Test
```ruby
# spec/core/mi_modulo_spec.rb
require_relative '../spec_helper'
$LOAD_PATH.unshift File.expand_path('../../core', __dir__)
require 'mi_modulo'
describe 'ADN::MiModulo' do
describe '.metodo' do
it 'hace algo esperado' do
expect(resultado).to eq(valor_esperado)
end
it 'rechaza valor inválido' do
expect { metodo(inválido) }.to raise_error(ADN::ValidationError)
end
end
end
```
## Buenos Patrones
1. **Un describe por clase/módulo**
2. **Un it por comportamiento**
3. **Tests independientes** (sin orden ni dependencias)
4. **Nombres descriptivos**: `it 'valida formato HH:MM'`
## Helpers Disponibles
- `expect(...).to eq(valor)`
- `expect(...).to match(/regex/)`
- `expect(...).to be true/false`
- `expect { }.to raise_error(Error)`
## Cobertura
| Módulo | Tests |
| :--- | :--- |
| db/evento | 3 |
| core/colores | 6 |
| core/validador | 6 |
| **Total** | **15** |
## Próximos Tests
- [ ] spec/core/error_handler_spec.rb
- [ ] spec/core/help_formatter_spec.rb
- [ ] spec/cli/db_spec.rb
- [ ] spec/cli/jornada_spec.rb