From 79e2c5cb256dbc1f801cbdd1cb2e621a91c0a623 Mon Sep 17 00:00:00 2001 From: isenguerre <nicolas.isenguerre@student.uclouvain.be> Date: Tue, 12 May 2020 20:06:18 +0200 Subject: [PATCH] Modifications pour supprimer une variable peu utile --- Final/main.c | 2 +- Final/test.c | 22 +++++++++++++--------- Final/utils.c | 2 +- Final/utils.h | 2 +- 4 files changed, 16 insertions(+), 12 deletions(-) diff --git a/Final/main.c b/Final/main.c index 073ee6f..5f25578 100644 --- a/Final/main.c +++ b/Final/main.c @@ -144,6 +144,6 @@ void* doPrime(){ //Fonction doFTOBUF dont le role est d'appeler la fonction ftobuf pour la meme raison que precedemment. void* doFTOBUF() { - ftobuf(in,firstBuffer,capacity,NTHREADS); + ftobuf(in,firstBuffer,NTHREADS); return NULL; } diff --git a/Final/test.c b/Final/test.c index f1e7e74..6e09b1c 100644 --- a/Final/test.c +++ b/Final/test.c @@ -7,7 +7,6 @@ #include "buffer.c" #include "utils.c" #include "utils.h" -//#include "main.c" #define taille 1000 @@ -106,7 +105,7 @@ void test_enqueueDequeue(void){ void test_ftobuf(void){ //Ils dependent fortement du fichier input utilise pour les tests ! La version ici est generale, a modifier si besoin. int tailleGen = 5; firstBuffer = createBuffer(tailleGen); - ftobuf(in,firstBuffer,tailleGen,0); //appel a la fonction qui fait son travail. + ftobuf(in,firstBuffer,0); //appel a la fonction qui fait son travail. for(int i = 0; i < tailleGen; i++){ //il faut modifier pour adapter aux donnees du fichier input, de preference prendre un truc periodique genre i+2, facile a verifie. CU_ASSERT_EQUAL(i,firstBuffer->q->array[i]); //ici, par exemple, dans fichier input, on aura 0,1,2,... jusque taille. } @@ -115,25 +114,30 @@ void test_ftobuf(void){ //Ils dependent fortement du fichier input utilise pou //test de la fonction doPrime. Fonctionne avec une entree void test_prime(void){ - char outputChar[50]; //on reserve des strings pour les sorties attendues et celles qu'on va obtenir - char expectedOutput[50]; + char* outputChar = (char *) malloc(50*sizeof(char)); //on reserve des strings pour les sorties attendues et celles qu'on va obtenir + if(outputChar == NULL) return; + char* expectedOutput = (char *) malloc(50*sizeof(char)); + if(outputChar == NULL) return; int tailleGen = 1; + printf("1"); firstBuffer = createBuffer(tailleGen); enqueue(firstBuffer->q,(void*) 15); //on peut modifier cette entree comme on veut - + printf("2"); prime(firstBuffer,taille,&filefree,out); //on appelle prime pour calculer les diviseurs premiers et remplir le fichier de sortie - + printf("3"); FILE* fichierComparaison = fopen("fichierComparaison.txt","r"); //fichier a creer en fonction de ce qu'on attend comme resultat if(fichierComparaison == NULL) return; - + printf("4"); fgets(outputChar, sizeof(outputChar),out); //lis la premiere ligne, donc on peut avoir un fichier d'output long donc un fichier d'input long aussi, fgets(expectedOutput, sizeof(expectedOutput),fichierComparaison); //ce n'est pas limitant ! - + printf("5"); CU_ASSERT_STRING_EQUAL(outputChar,expectedOutput); //les deux string sont egaux ? Cad, le contenu des fichiers de sortie sont les memes ? - + printf("1"); //On libere tout et on ferme le fichier ouvert pour la comparaison free_Buffer(firstBuffer); + free(outputChar); + free(expectedOutput); int err; if((err = fclose(fichierComparaison)) != 0) return; } diff --git a/Final/utils.c b/Final/utils.c index daefad7..0d82b1a 100644 --- a/Final/utils.c +++ b/Final/utils.c @@ -10,7 +10,7 @@ * et les injecte dans firstBuffer (sous forme de (void*)) */ -void* ftobuf(FILE* input, buffer_t* firstBuffer,int capacity,int NTHREADS) { //file (input) to buffer (firstBuffer) +void* ftobuf(FILE* input, buffer_t* firstBuffer,int NTHREADS) { //file (input) to buffer (firstBuffer) unsigned long long tmp; while (fscanf(input,"%llu", &tmp) == 1){ //Tant qu'il y a des donnees dans le fichier input, on poursuit la lecture du fichier et Producer(firstBuffer, (void*) tmp); //l'ecriture de ses elements dans le buffer de lecture diff --git a/Final/utils.h b/Final/utils.h index f52bbe8..36d0146 100644 --- a/Final/utils.h +++ b/Final/utils.h @@ -11,7 +11,7 @@ pthread_mutex_t filefree; //mutex pour le fichier de sortie int capacity; //capacite des buffers //Definition des fonctions developpees dans utils.c -void* ftobuf(FILE* input, buffer_t* buf, int capacity,int NTHREADS); +void* ftobuf(FILE* input, buffer_t* buf,int NTHREADS); void* prime(buffer_t *in, int size,pthread_mutex_t *filefree, FILE* outfile); #endif //PRIME_DIVS_UTILS_H -- GitLab