Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • a master definition file may provide the suite structure (multi1.def), with the right setting of inlimits, limits, triggers,
  • a developer in charge of adding test tasks to the suite may update it with a task test2, below an agreed family (/multi/main/00/test),
  • another tester may add some other tests as a different suite, triggered from ‘multi’ suite.

Image Removed


  ecflow_client --load multi1.def
  ecflow_client --replace /multi/main/00/test/fc_complete/test2 multi2.def
  ecflow_client --replace /test20121123 multi3.def

  python TestBench.py multi1.def
  python TestBench.py  multi3.def

multi1.def: suite structure definition

 


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
suite limits
  defstatus complete
 limit power6 120
  limit power7 120
  limit prod   10
  limit diss   10
  limit test 10
endsuite

suite multi

  family main
    inlimit /limits:power6
    repeat date YMD 20120101 20301212

  family 00
    family obs; 
      task get; 
    endfamily
    
    family ana
      trigger obs eq complete
 task ifs
    endfamily

    family fc
 trigger ana eq complete
 task model
        meter step -1 120
    endfamily

    family prod
    inlimit /limits:prod
      family 000; 
    trigger /multi/main/00/fc/model:step gt  0 or /multi/main/00/fc/model eq complete
 task gen; endfamily
      family 012;
    trigger /multi/main/00/fc/model:step gt 12 or /multi/main/00/fc/model eq complete
 task gen; endfamily
      family 024; 
    trigger /multi/main/00/fc/model:step gt 24 or /multi/main/00/fc/model eq complete
 task gen; endfamily
      family 048;
    trigger /multi/main/00/fc/model:step gt 48 or /multi/main/00/fc/model eq complete
 task gen; endfamily
      family 096; 
    trigger /multi/main/00/fc/model:step gt 96 or /multi/main/00/fc/model eq complete
 task gen; endfamily
      family 120; 
    trigger /multi/main/00/fc/model:step gt 120 or /multi/main/00/fc/model eq complete
 task gen; endfamily
    endfamily prod

    family diss
    inlimit /limits:diss
      family 000; 
    trigger /multi/main/00/prod/000 eq complete
 task gen; endfamily
      family 012;
    trigger /multi/main/00/prod/012 eq complete
 task gen; endfamily
      family 024; 
    trigger /multi/main/00/prod/024 eq complete
 task gen; endfamily
      family 048;
    trigger /multi/main/00/prod/048 eq complete
 task gen; endfamily
      family 096; 
    trigger /multi/main/00/prod/096 eq complete
 task gen; endfamily
      family 120; 
    trigger /multi/main/00/prod/120 eq complete
 task gen; endfamily
    endfamily diss

    family test
 inlimit /limits:test

      family fc_complete
    trigger /multi/main/00/fc eq complete
 task test1
      endfamily

      family prod_complete
    trigger /multi/main/00/prod eq complete
 task test1
      endfamily

      family diss
    trigger /multi/main/00/diss eq complete
 task test1
      endfamily
    endfamily 
 


multi2.def: task and family addition for intra-suite test

 


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
extern /limits:test
suite multi
  defstatus suspended
  family main
  family 00
  family test
 family fc_complete
    task test2

    family fam_test
      trigger test2 eq complete
 task prepare

      task process
        trigger prepare eq complete

 task push
        trigger process eq complete
 


multi3.def: standalone test triggered by ‘multi’ suite

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
extern /limits:test
extern /multi/main/00/fc/model:step
extern /multi/main:YMD

suite test20121123
  defstatus suspended # so that it can be changed manually to queued
  repeat date YMD 20120101 20301212
  family test
 repeat integer STEP 0 120
    trigger /multi/main:YMD gt /test20121123:YMD or (/multi/main:YMD eq /test20121123:YMD and (/multi/main/00/fc/model:step ge /test20121123/test:STEP or /multi/main/00/fc/model eq complete))
    task run

 

 

...