#!/usr/bin/env bash
# install.sh — instalar dependencias para E2E tests
set -euo pipefail

SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
E2E_DIR="$REPO_ROOT/e2e"

echo "=== Instalacion de E2E tests ==="

# 1. Verificar Node.js
if ! command -v node &>/dev/null; then
    echo "ERROR: Node.js no encontrado."
    echo "Instalar Node.js v18+ con:"
    echo "  curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -"
    echo "  sudo apt-get install -y nodejs"
    exit 1
fi

NODE_VERSION=$(node -v | sed 's/v//' | cut -d. -f1)
if [ "$NODE_VERSION" -lt 18 ]; then
    echo "ERROR: Se requiere Node.js v18+, encontrado v$(node -v)"
    exit 1
fi
echo "Node.js $(node -v) OK"

# 2. Instalar dependencias del proyecto
echo "Instalando dependencias npm..."
cd "$E2E_DIR"
npm ci

# 3. Instalar Chromium para Playwright
echo "Instalando Chromium para Playwright..."
npx playwright install chromium

# 4. Instalar dependencias del sistema para Playwright
echo "Instalando dependencias del sistema (requiere sudo)..."
sudo npx playwright install-deps chromium

echo ""
echo "=== Instalacion completa ==="
echo "Siguiente paso: copiar e2e/.env.example a e2e/.env y configurar credenciales"
