Est-il un moyen recommandé de définir des variables d'environnement pour les tests unitaires?

StackOverflow https://stackoverflow.com/questions/1492706

  •  18-09-2019
  •  | 
  •  

Question

Nous voulons utiliser Cunit pour tester une bibliothèque partagée que nous avons développé.

La bibliothèque partagée est chargée via le mécanisme de LD_PRELOAD Solaris standard où il utilise une variable d'environnement pour remapper une chaîne contenant un chemin de fichier à une nouvelle date et l'heure en fonction du chemin du fichier.

test initial utilisera une valeur unique pour la variable d'environnement utilisé pour contrôler cette remappage des chemins de fichiers.

Y at-il une suggérât, une recette peut-être ?, pour passer notre variable d'environnement dans l'environnement Cunit?

Je pense à la mise en valeur de test dans la fonction de configuration de la suite de tests en option.

Modifier Un peu plus en détail comme demandé par @ eaanon01 ci-dessous. (-:

Notre shlib met en œuvre une fonction qui prend un chemin de répertoire, par exemple

/home/www/my_tld

et puis en utilisant un horodatage Unix, et convertit que sur un chemin de répertoire dans nos archives, par exemple

/home/www/my_tld/1088589843

pour le contenu de cette tld à 20040630 10:04:03 GMT.

Comme nous ne contrôlons pas les paramètres des syscalls interceptés, nous devons utiliser une variable d'environnement pour passer dans l'horodatage requis, dans cet exemple une valeur de 1.088.589.843.

Nous voulons des tests unitaires pour tous les syscalls Unix nous interceptent cette shlib et nous voulons utiliser le cadre de Cunit pour les tests unitaires et ont une valeur fixe de l'horodatage qui est passé via la variable d'environnement.

Y at-il un moyen recommandé de fixer la variable d'environnement pour chaque test unitaire?

Était-ce utile?

La solution

Vous avez la possibilité de configurer et la suppression init une fonction « suite init » et une fonction « propre suite ». Pas sûr que je peux bien saisir la question, s'il vous plaît élaborer davantage.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top