-- ============================================
-- rioCata - Suite Completa de Tests
-- ============================================
-- Ejecuta todos los tests organizados por categoría
-- ============================================

\echo ''
\echo '██████╗ ██╗ ██████╗  ██████╗ █████╗ ████████╗ █████╗ '
\echo '██╔══██╗██║██╔═══██╗██╔════╝██╔══██╗╚══██╔══╝██╔══██╗'
\echo '██████╔╝██║██║   ██║██║     ███████║   ██║   ███████║'
\echo '██╔══██╗██║██║   ██║██║     ██╔══██║   ██║   ██╔══██║'
\echo '██║  ██║██║╚██████╔╝╚██████╗██║  ██║   ██║   ██║  ██║'
\echo '╚═╝  ╚═╝╚═╝ ╚═════╝  ╚═════╝╚═╝  ╚═╝   ╚═╝   ╚═╝  ╚═╝'
\echo ''
\echo '=========================================='
\echo 'Suite Completa de Tests - rioCata'
\echo '=========================================='
\echo ''
\echo 'Esta suite ejecuta todos los tests organizados en categorías:'
\echo '  1. Estructura de Base de Datos'
\echo '  2. Constraints y Validaciones'
\echo '  3. Triggers Automáticos'
\echo '  4. Queries Típicas'
\echo '  5. Funciones Auxiliares'
\echo '  6. Casos Límite (Edge Cases)'
\echo '  7. Uso de Índices'
\echo ''
\echo 'Iniciando tests...'
\echo ''

-- ============================================
-- 1. Tests de Estructura
-- ============================================
\i postgres/tests/test_structure.sql

\echo ''
\echo '=========================================='
\echo '1/7 Estructura completada ✓'
\echo '=========================================='
\echo ''

-- ============================================
-- 2. Tests de Constraints
-- ============================================
\i postgres/tests/test_constraints.sql

\echo ''
\echo '=========================================='
\echo '2/7 Constraints completados ✓'
\echo '=========================================='
\echo ''

-- ============================================
-- 3. Tests de Triggers
-- ============================================
\i postgres/tests/test_triggers.sql

\echo ''
\echo '=========================================='
\echo '3/7 Triggers completados ✓'
\echo '=========================================='
\echo ''

-- ============================================
-- 4. Tests de Queries
-- ============================================
\i postgres/tests/test_queries.sql

\echo ''
\echo '=========================================='
\echo '4/7 Queries completadas ✓'
\echo '=========================================='
\echo ''

-- ============================================
-- 5. Tests de Funciones
-- ============================================
\i postgres/tests/test_functions.sql

\echo ''
\echo '=========================================='
\echo '5/7 Funciones completadas ✓'
\echo '=========================================='
\echo ''

-- ============================================
-- 6. Tests de Edge Cases
-- ============================================
\i postgres/tests/test_edge_cases.sql

\echo ''
\echo '=========================================='
\echo '6/7 Edge Cases completados ✓'
\echo '=========================================='
\echo ''

-- ============================================
-- 7. Tests de Índices
-- ============================================
\i postgres/tests/test_indexes.sql

\echo ''
\echo '=========================================='
\echo '7/7 Índices completados ✓'
\echo '=========================================='
\echo ''

-- ============================================
-- Resumen Final
-- ============================================
\echo ''
\echo '╔════════════════════════════════════════╗'
\echo '║   SUITE COMPLETA DE TESTS FINALIZADA  ║'
\echo '╚════════════════════════════════════════╝'
\echo ''
\echo 'Categorías ejecutadas:'
\echo '  ✓ Estructura (8 tests)'
\echo '  ✓ Constraints (6 tests)'
\echo '  ✓ Triggers (3 tests)'
\echo '  ✓ Queries (5 tests)'
\echo '  ✓ Funciones (3 tests)'
\echo '  ✓ Edge Cases (7 tests)'
\echo '  ✓ Índices (6 tests)'
\echo ''
\echo 'Total: ~38 tests ejecutados'
\echo ''
\echo 'Para ejecutar categorías individuales:'
\echo '  \\i postgres/tests/test_structure.sql'
\echo '  \\i postgres/tests/test_constraints.sql'
\echo '  \\i postgres/tests/test_triggers.sql'
\echo '  \\i postgres/tests/test_queries.sql'
\echo '  \\i postgres/tests/test_functions.sql'
\echo '  \\i postgres/tests/test_edge_cases.sql'
\echo '  \\i postgres/tests/test_indexes.sql'
\echo ''
\echo 'Para ver queries de ejemplo:'
\echo '  \\i postgres/tests/example_queries.sql'
\echo ''
