Skip to content

Tests automatisés pour un compilateur de PLIC vers MIPS conçu en Java lors d'un projet à l'IUT Nancy-Charlemagne.

Notifications You must be signed in to change notification settings

LeCodeurDuDimanche/TestsCompilateurPlic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tests automatisés pour un compilateur

Le compilateur compile du PLIC, langage inventé pour le projet, vers de l'assembleur MIPS.

Les fichiers de tests sont des fichiers PLIC valides ou invalides, écrits par plusieurs élèves de la classe (lancer ./credits.sh pour plus d'informations).

Une version du compilateur que j'avais produit se trouve dans le dépôt afin de pouvoir faire marcher les tests.

Utilisation

Fichiers plics et scripts de test

Les fichiers plics sont dans le repertoire sources/

Pour que les scripts de test marchent correctement :

  • Ajouter faux dans le nom du fichier s'il contient des erreurs de compilation

  • Ajouter en commentaires après le programme le résultat de l'éxécution s'il est censé compiler (ou ERREUR si le programme doit planter)

  • Ajouter en commentaire les inputs du programme, dans l'ordre, précédés de INPUT: (peuvent être répartis un peu partout)

  • Ça serait cool dans le nom ou et commentaire dans le fichier de dire pourquoi il ne devrait pas compiler (si c'est le cas)

Le script bash compile-all.sh permet de compiler et de tester le compilateur

  • Copier votre fichier plic.jar dans le repertoire (ou alors faites un lien)

  • Lancer ./compile-all.sh -t pour lancer les tests (l'option --help affiche toutes les options)

  • Les fichier mips sont générés dans le répertoire generatedMips/

Lire le résultat d'un test : [PASSE|ERREUR|ERREUR_EXEC|ERREUR_TIMEOUT] [VALIDE|INVALIDE] nomFichier

PASSE : Le test passe

ERREUR : Le test ne passe pas (soit le fichier devrait compiler et ne compile pas, auquel cas l'erreur obtnue est affichée, soit le fichier compile mais ne devrait pas)

ERREUR_EXEC : Le test ne passe pas à l'éxécution, les résultats obtenu et attendu sont affichés

ERREUR_TIMEOUT : Le test ne passe pas à l'éxécution car le code génère une boucle infinie non prévue

VALIDE : Le fichier compile avec votre compilateur

INVALIDE : Le fichier ne compile pas avec votre compilateur

A la fin, le nombre de tests échouant est affichés (de plus le nombre de fichier passant la compilation ou non sont affichés, pour info seulement)

Le script run-all.sh permet d'éxécuter vos fichiers mips (il prend en argument des noms de fichier à éxécuter, ou rien pour tout éxécuter), il affiche le fichier plic correspondant

About

Tests automatisés pour un compilateur de PLIC vers MIPS conçu en Java lors d'un projet à l'IUT Nancy-Charlemagne.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages