#!/usr/bin/env python3
import re

def test_clean_parser():
    # Simular algunas líneas del markdown con ✅
    test_lines = [
        "a) Recoger o dejar  pasajeros o carga en  cualquier lugar",
        "b) Dejar animales sueltos o  situarlos de forma tal que  obstaculicen solo un poco  el tránsito",
        "✅ c) Recoger o dejar  pasajeros en lugares  autorizados.",
        "d) Ejercer el comercio  ambulatorio o estacionario"
    ]

    print("🧪 Probando el parser limpio...")
    print("=" * 50)

    options = []
    correct_option = ""

    for line in test_lines:
        original_line = line.strip()
        print(f"Línea original: '{original_line}'")

        # Verificar si esta línea tiene el ✅
        if '✅' in original_line:
            # Extraer la letra de la opción correcta
            match = re.search(r'✅\s*([a-d])\)', original_line)
            if match:
                correct_option = match.group(1)
                print(f"  ✅ Respuesta correcta encontrada: {correct_option}")

        # Limpiar la línea removiendo el ✅ completamente
        clean_line = re.sub(r'✅\s*', '', original_line)
        clean_line = re.sub(r'✅', '', clean_line)  # Por si hay ✅ sin espacios
        clean_line = clean_line.strip()

        print(f"  Línea limpia: '{clean_line}'")
        print(f"  ¿Contiene ✅?: {'✅' in clean_line}")

        options.append(clean_line)
        print("-" * 30)

    print(f"\n📊 Resultado final:")
    print(f"Respuesta correcta: {correct_option}")
    print(f"Opciones limpias:")
    for i, option in enumerate(options):
        letter = chr(97 + i)  # a, b, c, d
        marker = "✅" if letter == correct_option else "  "
        print(f"  {marker} {option}")

        # Verificar que no hay ✅ en las opciones
        if '✅' in option:
            print(f"  ❌ ERROR: Todavía hay ✅ en la opción!")
        else:
            print(f"  ✅ OK: Sin ✅ en la opción")

if __name__ == "__main__":
    test_clean_parser()
