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.
Fichiers
Demandes liées
Révisions associées
Historique
Mis à jour par A. Berriot il y a presque 2 ans
- Lié à Development #67911: paralléliser les tests via tox -p ajouté
Mis à jour par A. Berriot il y a presque 2 ans
- Fichier 0001-tox-fixed-inconsistent-obscure-db-names-during-tests.patch 0001-tox-fixed-inconsistent-obscure-db-names-during-tests.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Mis à jour par A. Berriot il y a presque 2 ans
Mis à jour par Benjamin Dauvergne il y a presque 2 ans
Alors oui, mais je ne vois pas où on tronque après que pytest-django ait rajouté son bordel.
Mis à jour par Benjamin Dauvergne il y a presque 2 ans
- Statut changé de Solution proposée à Information nécessaire
Mis à jour par A. Berriot il y a presque 2 ans
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)
Mis à jour par A. Berriot il y a presque 2 ans
- Assigné à changé de A. Berriot à Benjamin Dauvergne
Mis à jour par Benjamin Dauvergne il y a presque 2 ans
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.
Mis à jour par Benjamin Dauvergne il y a presque 2 ans
- Statut changé de Information nécessaire à 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.
Mis à jour par Benjamin Dauvergne il y a presque 2 ans
- Assigné à changé de Benjamin Dauvergne à A. Berriot
Mis à jour par A. Berriot il y a plus d'un an
- Statut changé de Solution validée à 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)
Mis à jour par Transition automatique il y a plus d'un an
- Statut changé de Résolu (à déployer) à Solution déployée
tox: fixed inconsistent / obscure db names during tests (#67933)