Développement #88412
closedtestdef, améliorer la gestion de l'avance dans le temps
0%
Description
Pour le moment c'est basé sur une astuce : pour contourner le fait qu'on ne peut pas changer ce que renvoient les appels à localtime() et autres now(), on rembobine les dates stockées vers le passé, ça donne une ligne comme formdata.receipt_time = rewind_time(formdata.receipt_time).
Je ne sais pas ce qui est préférable entre persévérer dans cette approche par nature fragile mais qui a le mérite de garder la tambouille des tests bien séparée, ou créer un module wcs.utils.timezone, avec genre dedans :
def localtime():
if hasattr(get_publisher(), test_datetime):
return get_publisher().test_datetime
return django_localtime()
pareil pour now et d'autres s'il y en a, en remplaçant tous les imports de django.utils.timezone.
Note : dans le déclencheur automatique d'une action globale, si on met relatif à la date de soumission du formulaire/du premier passage dans un statut, l'astuce actuelle fonctionne. Par contre si on met gabarit, il va falloir sacrément ruser pour aller rembobiner ce que ce gabarit renvoie : avant de réfléchir plus avant, j'ouvre donc ce ticket.
Updated by Robot Gitea almost 2 years ago
- Status changed from Nouveau to En cours
Valentin Deniaud (vdeniaud) a ouvert une pull request sur Gitea concernant cette demande :
- URL : https://git.entrouvert.org/entrouvert/wcs/pulls/1319
- Titre : WIP: workflow_test: mock date globally for skip time action (#88412)
- Modifications : https://git.entrouvert.org/entrouvert/wcs/pulls/1319/files
Updated by Robot Gitea almost 2 years ago
- Status changed from En cours to Solution proposée
Updated by Robot Gitea almost 2 years ago
- Status changed from Solution proposée to Solution validée
Frédéric Péters (fpeters) a approuvé une pull request sur Gitea concernant cette demande :
Updated by Robot Gitea almost 2 years ago
- Status changed from Solution validée to Résolu (à déployer)
Valentin Deniaud (vdeniaud) a mergé une pull request sur Gitea concernant cette demande :
- URL : https://git.entrouvert.org/entrouvert/wcs/pulls/1319
- Titre : workflow_test: mock date globally for skip time action (#88412)
- Modifications : https://git.entrouvert.org/entrouvert/wcs/pulls/1319/files
Updated by Transition automatique almost 2 years ago
- Status changed from Résolu (à déployer) to Solution déployée