Projet

Général

Profil

« Précédent | Suivant » 

Révision 293

Ajouté par ahkurklu il y a presque 4 ans

ajout table zone dangereuse ajout fonction distance_a_la_plus_proche_zone() ajout test unitaire

Voir les différences:

main.c
float longitude;
}Position;
typedef struct t_zone{
Position rpos;
float vitmax;
} Zone;
//Trames de tests ? modifier si n?cessaire.
char * trames[]= {"$GPGSV,3,2,10,15,03,077,,18,04,041,42,19,85,271,,20,08,214,*7C",
......
"$GPGSA,A,3,,03,,22,14,,01,,18,,,,3.9,3.4,1.9*39",
"$GPVTG,99.4,T,,M,0.4,N,0.7,K*57",
"$GPZDA,141914.00,01,02,2006,00,00*69",
0};
0};
Zone zones[]={{{44.7887762,-3.012},50},
{{44.7891220,-3.013},70},
{{45.7896227,-3.014},70},
{{45.8791420,-3.014},70},
{{46.2971220,-3.011},70}
};
int decode_int(char c);
int decode_trames(char * trame, Position * p);
......
exit(-1);
}
}
}
int distance_a_la_proche_zone(Position p, Zone r[],int nb_zones,float * d){
int i,j;
if(nb_zones == 0){
return -1;
}
else {
*d = calcule_distance(p,r[0].rpos);
j=0;
for(i=1;i<nb_zones;i++){
if(calcule_distance(p,r[i].rpos)<*d){
*d= calcule_distance(p,r[i].rpos);
j=i;
}
}
return j;
}
}
void test_unitaire_distance_proche(void){
float d;
Position p ={44.7891220, -3.013};
if(distance_a_la_proche_zone(p,zones, 5,&d) != 1){
printf("Erreur test unitaire distance proche\n");
exit(-1);
}
p.latitude=46.2971220;
p.longitude=-3.011;
if(distance_a_la_proche_zone(p,zones, 5,&d) != 4){
printf("Erreur test unitaire distance proche\n");
exit(-1);
}
}
//Ajouter vos tests unitaires dans cette fonction.
void tests_unitaires(void){
if (5!=5){
......
test_unitaire_conversion_long_float();
test_unitaire_conversion_long_lat_float();
tests_unitaires_decode_tram();
tests_unitaires_distance();
tests_unitaires_distance();
test_unitaire_distance_proche();
}

Formats disponibles : Unified diff