from app.tts.tamil import expand_abbreviations, normalize_numbers_and_currency, normalize_tamil, analyze

def test_unicode_normalization():
    assert normalize_tamil("  தமிழ்   சினிமா  ") == "தமிழ் சினிமா"

def test_indian_currency_expansion():
    result = normalize_numbers_and_currency("₹25,00,000")
    assert result == "இருபத்தைந்து லட்சம் ரூபாய்"

def test_crore_expansion():
    result = normalize_numbers_and_currency("₹1,25,00,000")
    assert "கோடி" in result
    assert "ரூபாய்" in result

def test_decimal_expansion():
    result = normalize_numbers_and_currency("12.5")
    assert "புள்ளி" in result

def test_abbreviation_expansion():
    result = expand_abbreviations("AI CAG GPS")
    assert "ஏஐ" in result and "சிஏஜி" in result and "ஜிபிஎஸ்" in result

def test_tamil_analysis():
    result = analyze("ரஜினி AI பற்றி பேசுகிறார்")
    assert result["language"] == "TAM"
    assert result["stats"]["tamil_tokens"] > 0
    assert result["stats"]["latin_tokens"] > 0
    assert result["stats"]["code_switching"] is True

def test_tamil_pronunciation_is_generated():
    result = analyze("தமிழ்")
    tamil = next(token for token in result["tokens"] if token["kind"] == "tamil")
    assert tamil["pronunciation"]
    assert tamil["pronunciation"] != "தமிழ்"
