NMD
u8.c
Go to the documentation of this file.
00001 #include <stdlib.h>
00002 #include "string.h"
00003 #include "nmd.h"
00004 
00005 /*! Test setting and getting of array values */
00006 int main(int argc,char **argv) {
00007   NMD_metadata nmd; NMDErrorCode ierr; 
00008   NMDTruth flg;
00009   const char *c1 = "string1";
00010   const char *c2 = "string2";
00011   char *rc1,*rc2,*rc3;
00012   PetscFunctionBegin;
00013   PetscInitialize(&argc,&argv,0,0);
00014 
00015   ierr = NMDCreateObject(&nmd); NMD_ERR_RETURN(ierr);
00016 
00017   ierr = NMDSetValue(nmd,"catg","c1",NMDString,(void*)c1); NMD_ERR_RETURN(ierr);
00018   c2 = "string2";
00019   ierr = NMDSetValue(nmd,"catg","c2",NMDString,(void*)c2); NMD_ERR_RETURN(ierr);
00020   ierr = NMDSetValue
00021     (nmd,"catg","c3",NMDString,(void*)"string3"); NMD_ERR_RETURN(ierr);
00022 
00023   ierr = NMDGetValue(nmd,"catg","c1",NULL,&rc1,&flg); NMD_ERR_RETURN(ierr);
00024   if (!flg) NMD_ERR_REPORT("trouble finding 1");
00025   ierr = NMDGetValue(nmd,"catg","c2",NULL,&rc2,&flg); NMD_ERR_RETURN(ierr);
00026   if (!flg) NMD_ERR_REPORT("trouble finding 2");
00027   ierr = NMDGetValue(nmd,"catg","c3",NULL,&rc3,&flg); NMD_ERR_RETURN(ierr);
00028   if (!flg) NMD_ERR_REPORT("trouble finding 3");
00029 
00030   if (strcmp(rc1,"string1")) NMD_ERR_REPORTs("problem1",rc1);
00031   if (strcmp(rc2,"string2")) NMD_ERR_REPORTs("problem2",rc2);
00032   if (strcmp(rc3,"string3")) NMD_ERR_REPORTs("problem3",rc3);
00033 
00034   ierr = NMDDestroyObject(nmd); NMD_ERR_RETURN(ierr);
00035 
00036   PetscFinalize();
00037   PetscFunctionReturn(0);
00038 }