"""Tests para slugify_obsidian_name."""

from slugify_obsidian_name import slugify_obsidian_name


def test_acentos_y_espacios():
    # Golden path: transliteracion de acentos + espacios a kebab-case.
    assert slugify_obsidian_name("Enmanuel Gutiérrez Pérez") == "enmanuel-gutierrez-perez"


def test_enye_se_mapea_a_n():
    # Edge: la enye no la descompone NFKD, la mapeamos explicitamente.
    assert slugify_obsidian_name("Jose manuel camaño castro") == "jose-manuel-camano-castro"


def test_mezcla_mayusculas_y_acentos():
    assert slugify_obsidian_name("DNI de María del Mar") == "dni-de-maria-del-mar"


def test_simbolos_y_dobles_separadores():
    # Edge: secuencias de no-alfanumericos colapsan a un solo '-', strip en bordes.
    assert slugify_obsidian_name("  raro__nombre!! ") == "raro-nombre"


def test_string_vacio():
    assert slugify_obsidian_name("") == ""


def test_solo_simbolos_devuelve_vacio():
    # Edge: nada slugificable -> cadena vacia, sin guiones colgando.
    assert slugify_obsidian_name("!!!---???") == ""
