Development #67933
Simplifier le nom des bases en test
0%
Description
Cf https://dev.entrouvert.org/issues/67911#note-13
On avait du code dans les settings de test qui incluait le nom de la branche dans la base de test, or pytest-django a également un mécanisme qui inclut le nom de l'environnement tox quand les tests sont lancés en parallèle.
Par conséquent, on peut simplifier l'existant.
Files
Related issues
Associated revisions
History
Updated by Agate Berriot 10 months ago
- Related to Development #67911: paralléliser les tests via tox -p added
Updated by Agate Berriot 10 months ago
- File 0001-tox-fixed-inconsistent-obscure-db-names-during-tests.patch 0001-tox-fixed-inconsistent-obscure-db-names-during-tests.patch added
- Status changed from Nouveau to Solution proposée
- Patch proposed changed from No to Yes
Updated by Benjamin Dauvergne 10 months ago
Alors oui, mais je ne vois pas où on tronque après que pytest-django ait rajouté son bordel.
Updated by Benjamin Dauvergne 10 months ago
- Status changed from Solution proposée to Information nécessaire
Updated by Agate Berriot 10 months ago
Benjamin Dauvergne a écrit :
Alors oui, mais je ne vois pas où on tronque après que pytest-django ait rajouté son bordel.
On ne tronque pas, on fait l'inverse : on ajoute pas le tox_env_name dans le nom de la base quand on est en parallèle, et on laisse pytest-django le rajouter après (c'est fait après le chargement des settings, au moment ou la fixture db est utilisée)
Updated by Benjamin Dauvergne 10 months ago
Mais les noms des bases vont être trop long avec le nom de la branche puis le nom de l'env, on est d'accord ?
PS: pour dire que je ne vois pas dans le code de pytest-django d'endroit où il tronquerait donc on fait un pas un avant et un pas en arrière.
Updated by Benjamin Dauvergne 10 months ago
- Status changed from Information nécessaire to Solution validée
J'ai l'impression qu'on se comprend pas :) Le nouveau code tronque le nom de la branche à 15 caractères puis ajoute le TOX_ENV_NAME ou si TOX_PARALLEL_ENV existe s'attend à l'ajout du suffixe TOX_PARALLEL_ENV plus éventuellement celui d'xdist. Tu sembles certaine que dans tous les cas on va rentrer dans le budget des 63 caractères (et pas 68 comme c'est écrit dans le code), et ça semble le cas 15 + 1 caractère de jointure + max(len(tox_env))=33 + 1 + len(gw0) = 53. Mais on perd 10 caractères significatifs au passage, ça aurait été plus simple de tronquer dans db_modify_settings avec un hash sur 2 caractères que de faire ces calculs d'apothicaire.
Bon je valide parce que ça marche, mais ça reste trop sioux pour moi et éloigné des pratiques conseillées dans la doc de pytest-django.
Updated by Benjamin Dauvergne 10 months ago
- Assignee changed from Benjamin Dauvergne to Agate Berriot
Updated by Agate Berriot 10 months ago
- Status changed from Solution validée to Résolu (à déployer)
commit b151e8babd249526c1a3440cb0d08f08292960a2 Author: Agate Berriot <aberriot@entrouvert.com> Date: Thu Aug 4 09:31:48 2022 +0200 tox: fixed inconsistent / obscure db names during tests (#67933)
Updated by Transition automatique 10 months ago
- Status changed from Résolu (à déployer) to Solution déployée
tox: fixed inconsistent / obscure db names during tests (#67933)