1c4762a1bSJed Brown 2c4762a1bSJed Brown static char help[] = "Tests PetscOptionsGetViewer() via checking output of PetscViewerASCIIPrintf().\n\n"; 3c4762a1bSJed Brown 4c4762a1bSJed Brown #include <petscviewer.h> 5c4762a1bSJed Brown 6c4762a1bSJed Brown int main(int argc,char **args) 7c4762a1bSJed Brown { 8c4762a1bSJed Brown PetscViewer viewer; 9c4762a1bSJed Brown PetscViewerFormat format; 10c4762a1bSJed Brown PetscBool iascii; 11c4762a1bSJed Brown 12*327415f7SBarry Smith PetscFunctionBeginUser; 139566063dSJacob Faibussowitsch PetscCall(PetscInitialize(&argc,&args,(char*)0,help)); 149566063dSJacob Faibussowitsch PetscCall(PetscOptionsGetViewer(PETSC_COMM_WORLD,NULL,NULL,"-myviewer",&viewer,&format,NULL)); 159566063dSJacob Faibussowitsch PetscCall(PetscObjectTypeCompare((PetscObject)viewer,PETSCVIEWERASCII,&iascii)); 16c4762a1bSJed Brown if (iascii) { 179566063dSJacob Faibussowitsch PetscCall(PetscViewerPushFormat(viewer,format)); 189566063dSJacob Faibussowitsch PetscCall(PetscViewerASCIIPrintf(viewer,"Testing PetscViewerASCIIPrintf %d\n", 0)); 199566063dSJacob Faibussowitsch PetscCall(PetscViewerPopFormat(viewer)); 209566063dSJacob Faibussowitsch PetscCall(PetscViewerDestroy(&viewer)); 219566063dSJacob Faibussowitsch PetscCall(PetscOptionsGetViewer(PETSC_COMM_WORLD,NULL,NULL,"-myviewer",&viewer,&format,NULL)); 229566063dSJacob Faibussowitsch PetscCall(PetscViewerPushFormat(viewer,format)); 239566063dSJacob Faibussowitsch PetscCall(PetscViewerASCIIPrintf(viewer,"Testing PetscViewerASCIIPrintf %d\n", 1)); 249566063dSJacob Faibussowitsch PetscCall(PetscViewerPopFormat(viewer)); 25c4762a1bSJed Brown } 269566063dSJacob Faibussowitsch PetscCall(PetscViewerDestroy(&viewer)); 279566063dSJacob Faibussowitsch PetscCall(PetscFinalize()); 28b122ec5aSJacob Faibussowitsch return 0; 29c4762a1bSJed Brown } 30c4762a1bSJed Brown 31c4762a1bSJed Brown /*TEST 32c4762a1bSJed Brown 33c4762a1bSJed Brown test: 34c4762a1bSJed Brown args: -myviewer ascii:ex4w1.tmp 35c4762a1bSJed Brown filter: cat ex4w1.tmp 36c4762a1bSJed Brown output_file: output/ex4w.out 37c4762a1bSJed Brown 38c4762a1bSJed Brown test: 39c4762a1bSJed Brown suffix: 2 40c4762a1bSJed Brown args: -myviewer ascii:ex4w2.tmp:: 41c4762a1bSJed Brown filter: cat ex4w2.tmp 42c4762a1bSJed Brown output_file: output/ex4w.out 43c4762a1bSJed Brown 44c4762a1bSJed Brown test: 45c4762a1bSJed Brown suffix: 3 46c4762a1bSJed Brown args: -myviewer ascii:ex4w3.tmp::write 47c4762a1bSJed Brown filter: cat ex4w3.tmp 48c4762a1bSJed Brown output_file: output/ex4w.out 49c4762a1bSJed Brown 50c4762a1bSJed Brown test: 51c4762a1bSJed Brown suffix: 4 52c4762a1bSJed Brown args: -myviewer ascii:ex4a1.tmp::append 53c4762a1bSJed Brown filter: cat ex4a1.tmp 54c4762a1bSJed Brown output_file: output/ex4a.out 55c4762a1bSJed Brown 56c4762a1bSJed Brown TEST*/ 57