xref: /petsc/src/sys/tests/ex23.c (revision 11486bccf1aeea1ca5536228f99d437b39bdaca6)
1 
2 static char help[] = "Tests string options with spaces";
3 
4 #include <petscsys.h>
5 
6 int main(int argc,char **argv)
7 {
8   PetscBool      ts_view       = PETSC_FALSE;
9   PetscInt       ts_max_steps  = 0, snes_max_it = 0;
10   PetscReal      ts_max_time = 0.;
11   PetscBool      foo_view       = PETSC_FALSE;
12   PetscInt       foo_max_steps  = 0, bar_max_it = 0;
13   PetscReal      foo_max_time = 0.;
14 
15   PetscFunctionBeginUser;
16   PetscCall(PetscInitialize(&argc,&argv,NULL,help));
17   PetscCall(PetscOptionsGetBool(NULL,0,"-ts_view",&ts_view,NULL));
18   PetscCall(PetscOptionsGetReal(NULL,0,"-ts_max_time",&ts_max_time,NULL));
19   PetscCall(PetscOptionsGetInt(NULL,0,"-ts_max_steps",&ts_max_steps,NULL));
20   PetscCall(PetscOptionsGetBool(NULL,0,"-foo_view",&foo_view,NULL));
21   PetscCall(PetscOptionsGetReal(NULL,0,"-foo_max_time",&foo_max_time,NULL));
22   PetscCall(PetscOptionsGetInt(NULL,0,"-foo_max_steps",&foo_max_steps,NULL));
23   PetscCall(PetscOptionsGetInt(NULL,0,"-snes_max_it",&snes_max_it,NULL));
24   PetscCall(PetscOptionsGetInt(NULL,0,"-bar_max_it",&bar_max_it,NULL));
25   PetscCall(PetscPrintf(PETSC_COMM_WORLD,"-ts_view = %s\n-ts_max_time = %f\n-ts_max_steps = %" PetscInt_FMT "\n-snes_max_it = %" PetscInt_FMT "\n",ts_view ? "true" : "false",(double)ts_max_time,ts_max_steps,snes_max_it));
26   PetscCall(PetscFinalize());
27   return 0;
28 }
29 
30 /*TEST
31 
32    test:
33       args: -options_file_yaml ex23options
34       localrunfiles: ex23options
35 
36    test:
37       suffix: string
38       args: -options_string_yaml "
39         foo: &foo
40           view: true
41           max: &foomax
42             steps: 3
43             time: 1.4
44         bar: &bar
45           max_it: 5
46         ts:
47           <<: *foo
48           max:
49             <<: *foomax
50             steps: 10
51         snes: *bar"
52 
53 TEST*/
54