28 int main (
int argc,
char **argv)
31 const char filename[] =
"Unittest_MEDparameter_1.med";
32 const char comment[] =
"Parameters unit tests";
33 const char p1name[] =
"FLOAT_PARAMETER";
34 const char p2name[] =
"INT_PARAMETER_1";
35 const char p3name[] =
"INT_PARAMETER_2";
39 const char p1description[] =
"PARAMETER 1 DESCRIPTION";
40 const char p2description[] =
"PARAMETER 2 DESCRIPTION";
41 const char p3description[] =
"PARAMETER 3 DESCRIPTION";
42 const char dtunit1[] =
"DT UNIT P1";
43 const char dtunit2[] =
"DT UNIT P2";
44 const char dtunit3[] =
"DT UNIT P3";
89 MESSAGE(
"ERROR : file creation ...");
95 MESSAGE(
"ERROR : write comment ...");
101 if (
MEDparameterCr(fid, p1name, p1type, p1description, dtunit1) < 0) {
102 MESSAGE(
"ERROR : parameter p1 creation ...");
107 if (
MEDparameterValueWr(fid, p1name, p1numdt1, p1numit1, p1dt1, (
unsigned char*) &p1v1) < 0) {
108 MESSAGE(
"ERROR : write p1v1 ...");
112 if (
MEDparameterValueWr(fid, p1name, p1numdt2, p1numit2, p1dt2, (
unsigned char*) &p1v2) < 0) {
113 MESSAGE(
"ERROR : write p1v2 ...");
117 if (
MEDparameterValueWr(fid, p1name, p1numdt3, p1numit3, p1dt3, (
unsigned char*) &p1v3) < 0) {
118 MESSAGE(
"ERROR : write p1v3 ...");
124 if (
MEDparameterCr(fid, p2name, p2type, p2description, dtunit2) < 0) {
125 MESSAGE(
"ERROR : paramter p2 creation ...");
129 if (
MEDparameterValueWr(fid, p2name, p2numdt1, p2numit1, p2dt1, (
unsigned char*) &p2v1) < 0) {
130 MESSAGE(
"ERROR : write p2v1 ...");
134 if (
MEDparameterValueWr(fid, p2name, p2numdt1, p2numit1, p2dt1, (
unsigned char*) &p2v2) < 0) {
135 MESSAGE(
"ERROR : write p2v2 on same computation step ...");
141 if (
MEDparameterCr(fid, p3name, p3type, p3description, dtunit3) < 0) {
142 MESSAGE(
"ERROR : paramter p3 creation ...");
146 if (
MEDparameterValueWr(fid, p3name, p3numdt1, p3numit1, p3dt1, (
unsigned char*) &p3v1) < 0) {
147 MESSAGE(
"ERROR : write p3v1 ...");
151 if (
MEDparameterValueWr(fid, p3name, p3numdt2, p3numit2, p3dt2, (
unsigned char*) &p3v2) < 0) {
152 MESSAGE(
"ERROR : write p3v2 ...");
159 MESSAGE(
"ERROR : file closing ...");
166 MESSAGE(
"ERROR : open in READ ONLY ACCESS mode ...");
173 dtunitToRead, &nstepToRead) < 0) {
174 MESSAGE(
"ERROR : read information for parameter p1 ...");
182 if ((typeToRead != p1type) || strcmp(descriptionToRead, p1description) ||
183 strcmp(dtunitToRead,dtunit1) || (nstepToRead != p1ncpst)) {
184 MESSAGE(
"ERROR : read information for parameter p1 : attributes ...");
194 dtunitToRead, &nstepToRead) < 0) {
195 MESSAGE(
"ERROR : read information for parameter p2 ...");
203 if ((typeToRead != p2type) || strcmp(descriptionToRead, p2description) ||
204 strcmp(dtunitToRead,dtunit2) || (nstepToRead != p2ncpst)) {
205 MESSAGE(
"ERROR : read information for parameter p2 : attributes ...");
215 dtunitToRead, &nstepToRead) < 0) {
216 MESSAGE(
"ERROR : read information for parameter p3 ...");
224 if ((typeToRead != p3type) || strcmp(descriptionToRead, p3description) ||
225 strcmp(dtunitToRead,dtunit3) || (nstepToRead != p3ncpst)) {
226 MESSAGE(
"ERROR : read information for parameter p2 : attributes ...");
237 MESSAGE(
"ERROR : read number of paremeter ...");
242 MESSAGE(
"The number of parameter is 3 !");
253 dtunitToRead, &nstepToRead) < 0) {
254 MESSAGE(
"ERROR : read information for parameter p3 ...");
264 if (strcmp(nameToRead, p1name) || (typeToRead != p1type) ||
265 strcmp(descriptionToRead, p1description) || strcmp(dtunitToRead,dtunit1)
266 || (nstepToRead != p1ncpst)) {
267 MESSAGE(
"ERROR : read information for parameter p1 : attributes ...");
277 if ( strcmp(nameToRead, p2name) || (typeToRead != p2type) ||
278 strcmp(descriptionToRead, p2description) || strcmp(dtunitToRead,dtunit2)
279 || (nstepToRead != p2ncpst)) {
280 MESSAGE(
"ERROR : read information for parameter p2 : attributes ...");
290 if (strcmp(nameToRead,p3name) || (typeToRead != p3type) ||
291 strcmp(descriptionToRead, p3description) || strcmp(dtunitToRead,dtunit3) ||
292 (nstepToRead != p3ncpst)) {
293 MESSAGE(
"ERROR : read information for parameter p2 : attributes ...");
304 for (j=0; j<nstepToRead; j++) {
307 &numdtToRead, &numitToRead, &dtToRead) < 0) {
308 MESSAGE(
"ERROR : read information about computation step ...");
318 (
unsigned char *) &fvalueToRead) < 0) {
319 MESSAGE(
"ERROR : read parameter value ...");
329 (
unsigned char *) &ivalueToRead) < 0) {
330 MESSAGE(
"ERROR : read parameter value ...");
340 if ((i==0) && (j==0))
341 if ((numdtToRead != p1numdt1) || (numitToRead != p1numit1) || (dtToRead != p1dt1) ||
342 (fvalueToRead != p1v1)) {
343 MESSAGE(
"ERROR : false informations for computation step : attributes ...");
351 if ((i==0) && (j==1))
352 if ((numdtToRead != p1numdt3) || (numitToRead != p1numit3) || (dtToRead != p1dt3) ||
353 (fvalueToRead != p1v3)) {
354 MESSAGE(
"ERROR : false informations for computation step : attributes ...");
362 if ((i==0) && (j==2))
363 if ((numdtToRead != p1numdt2) || (numitToRead != p1numit2) || (dtToRead != p1dt2) ||
364 (fvalueToRead != p1v2)) {
365 MESSAGE(
"ERROR : false informations for computation step : attributes ...");
374 if ((numdtToRead != p2numdt1) || (numitToRead != p2numit1) || (dtToRead != p2dt1) ||
375 (ivalueToRead != p2v2)) {
376 MESSAGE(
"ERROR : false informations for computation step : attributes ...");
384 if ((i == 2) && (j == 0))
385 if ((numdtToRead != p3numdt2) || (numitToRead != p3numit2) || (dtToRead != p3dt2) ||
386 (ivalueToRead != p3v2)) {
387 MESSAGE(
"ERROR : false informations for computation step : attributes ...");
395 if ((i == 2) && (j == 1))
396 if ((numdtToRead != p3numdt1) || (numitToRead != p3numit1) || (dtToRead != p3dt1) ||
397 (ivalueToRead != p3v1)) {
398 MESSAGE(
"ERROR : false informations for computation step : attributes ...");
412 MESSAGE(
"ERROR : close file ...");