mirror of
https://forge.chapril.org/tykayn/orgmode-to-gemini-blog
synced 2025-06-20 09:04:42 +02:00
testing utils, generate better gemini links
This commit is contained in:
parent
6134f677fa
commit
cb2f0d1aa3
6 changed files with 311 additions and 183 deletions
33
test_utils.py
Normal file
33
test_utils.py
Normal file
|
@ -0,0 +1,33 @@
|
|||
import pytest
|
||||
from utils import slugify_title
|
||||
|
||||
def test_slugify_title_with_accents():
|
||||
"""Test que slugify conserve les accents francophones"""
|
||||
title = "Rétrospective du cul"
|
||||
expected = "rétrospective-du-cul"
|
||||
result = slugify_title(title)
|
||||
assert result == expected, f"Expected '{expected}' but got '{result}'"
|
||||
|
||||
def test_slugify_title_various_cases():
|
||||
"""Test slugify avec différents cas de figure"""
|
||||
test_cases = [
|
||||
("Hello World!", "hello-world"),
|
||||
("L'été est là", "l-été-est-là"),
|
||||
("100% Bio", "100-bio"),
|
||||
("Spécial & Unique", "spécial-unique"),
|
||||
("Multiple Spaces", "multiple-spaces"),
|
||||
("émission télé", "émission-télé"),
|
||||
("TOUT EN MAJUSCULES", "tout-en-majuscules"),
|
||||
("mix OF cases", "mix-of-cases"),
|
||||
("points...multiples...", "points-multiples"),
|
||||
("Voilà l'été", "voilà-l-été"),
|
||||
("Être ou ne pas être", "être-ou-ne-pas-être"),
|
||||
("Ça c'est génial !", "ça-c-est-génial"),
|
||||
]
|
||||
|
||||
for input_title, expected in test_cases:
|
||||
result = slugify_title(input_title)
|
||||
assert result == expected, f"Pour '{input_title}', attendu '{expected}' mais reçu '{result}'"
|
||||
|
||||
if __name__ == '__main__':
|
||||
pytest.main([__file__])
|
Loading…
Add table
Add a link
Reference in a new issue