J'essaie certainement de réaliser quelque chose de bizarre ici, mais je veux truquer la date localement pour une session shell sur GNU / Linux. Je dois tester en boîte noire comment un programme se comporte à différentes dates, et la modification de la date à l'échelle du système peut avoir des effets secondaires indésirables (tâches cron, journaux foirés, etc.).
Des idées ?
Je n'ai pas encore essayé celui-ci. Mais si c'est le cas, il semblerait que quelqu'un ait déjà écrit la bibliothèque que vous pouvez précharger avec libfaketime .
L'utilisation de base est:
Vous pouvez utiliser
ltrace
pour vous assurer que toutes les fonctions horaires utilisées par votre application sont couvertes.la source
Vous pouvez définir la variable TZ sur une valeur excentrique.
la source
date Thu Aug 9 12:12:50 CDT 2018
, `TZ = 'UTC + 120: 00' date sam août 4 09:00:47 UTC 2018,
TZ = 'UTC-120: 00' date mar 14 août 09:01:41 UTC 2018 '. Environ + - une semaine.Vous pourrez peut-être précharger une bibliothèque qui a une
time()
implémentation alternative .la source