#!/usr/bin/env bash
set -u

FOTO="${1:-}"

if [ -z "$FOTO" ]; then
    echo "Uso: ./testar_analisador_estavel.sh /caminho/foto.jpg"
    exit 1
fi

PYTHON="/opt/pele-ai/venv/bin/python"
ANALISADOR="/opt/pele-ai/analisador_local.py"

STDOUT="$(mktemp)"
STDERR="$(mktemp)"

"$PYTHON" "$ANALISADOR" "$FOTO" \
    >"$STDOUT" \
    2>"$STDERR"

CODIGO=$?

echo "Código: $CODIGO"
echo
echo "STDOUT:"
cat "$STDOUT"
echo
echo "STDERR:"
cat "$STDERR"
echo
echo "Validação:"
python3 - "$STDOUT" <<'PY'
import json
import pathlib
import sys

texto = pathlib.Path(sys.argv[1]).read_text(
    encoding="utf-8",
    errors="replace"
).strip()

try:
    dados = json.loads(texto)
    print("JSON VÁLIDO")
    print(json.dumps(dados, ensure_ascii=False, indent=2))
except Exception as erro:
    print("JSON INVÁLIDO:", erro)
PY

rm -f "$STDOUT" "$STDERR"
