Précédent Remonter Suivant

6  Extensions de la commande comp

Les sections précédentes présentent une version minimale de la commande comp. Nous définissons ici les extensions que vous pourrez intégrer dans une seconde version de vos développements. Dans un premier temps, ne vous arrêtez pas sur ces extensions.

Distinguer stdout et stderr

On veut pouvoir distinguer des données produites par la commande sur la sortie standard et la sortie d'erreur. Pour ce faire on définit quatre nouveaux paramètres : STDOUT, STDOUTFILE, STDERR, et STDERRFILE identifiant le contenu attendu sur la sortie standard et sur la sortie d'erreur. De plus un paramètre booléen MIXEDOUTERR indique si on doit considérer la sortie standard et la sortie d'erreur indépendamment.

Lecture et écriture depuis la commande

La commande à tester peut produire des entrées/sorties directement dans des fichiers autres que ses sorties standard.

La valeur NINFILE et la valeur NOUTFILE indiquent respectivement combien de fichiers sont lus et écrits par la commande.

Une série de paramètres INFILENAME<i> et INFILEDATA<i> identifie les fichiers lus par la commande. La commande va lire chacun des fichiers de nom INFILENAME<i> dont le contenu doit être égal au contenu du fichier INFILEDATA<i> avant l'exécution pour le test.

Une série de paramètres OUTFILENAME<i> et OUTFILEDATA<i> identifie les fichiers écrits par la commande. La commande va écrire chacun des fichiers de nom OUTFILENAME<i> dont le contenu attendu après l'exécution doit être égal au contenu du fichier OUTFILEDATA<i>.

La valeur du paramètre DIRFILE est un répertoire à partir duquel les noms de fichier INFILENAME<i> et OUTFILENAME<i> sont relatifs. La valeur du paramètre DIRDATA est un répertoire à partir duquel les noms de fichier INFILEDATA<i> et OUTFILEDATA<i> sont relatifs.

Compression

Un paramètre booléen COMPRESSEDDATA identifie le fait que les fichiers STD*FILE et *FILEDATA<i> sont compressés. La commande de décompression à utiliser qui lit son entrée standard et produit un résultat sur sa sortie standard est zcat. Le paramètre ZCAT peut surcharger cette valeur par défaut.

Permutation

Il s'agit de proposer une extension de la comparaison des contenus attendu et produit. Le paramètre booléen UNSORT indique que ces contenus doivent être identiques à une permutation des lignes près.

Variables

On considère que les valeurs données aux paramètres doivent être évaluées par un shell. Ainsi il est possible d'utiliser des variables du shell dans un fichier de configuration par exemple :
DIRSTD = $HOME/tests

Précédent Remonter Suivant