Trouve-KA — moteur de recherche web indépendant, Québec-first. Crawler distribué, index OpenSearch, ranking bilingue, galerie d'images. En prod : www.trouve-ka.com
Python 51.9%
TypeScript 32.7%
JavaScript 4.8%
CSS 4.1%
Shell 2.9%
HTML 1.8%
SQL 1.5%
1# Trouve-KA — tests de décodage et réparation d'encodage2# Author: Simon-Pierre Boucher3# Contact: contact@spboucher.ai45from trouveka.parser import decode_html, fix_mojibake678def test_fix_mojibake_repare_double_encodage():9 assert fix_mojibake("Une équipe donnée à Trois-Rivières") == "Une équipe donnée à Trois-Rivières"10 assert fix_mojibake("décédé à l'âge de 87 ans") == "décédé à l'âge de 87 ans"111213def test_fix_mojibake_ne_touche_pas_au_texte_sain():14 sain = "Une équipe professionnelle à Trois-Rivières — déjà là."15 assert fix_mojibake(sain) == sain16 assert fix_mojibake("plain ascii text") == "plain ascii text"171819def test_decode_html_utf8_prioritaire_sur_charset_menteur():20 # Serveur qui déclare iso-8859-1 mais sert de l'UTF-8 (défaut Apache)21 body = "Ville de Trois-Rivières — déneigement".encode("utf-8")22 assert decode_html(body, "iso-8859-1") == "Ville de Trois-Rivières — déneigement"232425def test_decode_html_vrai_cp1252_toujours_gere():26 body = "Ville de Québec — déneigement".encode("cp1252")27 assert decode_html(body, "iso-8859-1") == "Ville de Québec — déneigement"28