File: Ensstat.py.test.in

package info (click to toggle)
cdo 2.6.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 49,836 kB
  • sloc: cpp: 185,271; ansic: 95,766; sh: 7,192; f90: 6,147; makefile: 1,977; ruby: 1,078; csh: 1,028; python: 995; fortran: 319; pascal: 219; perl: 9
file content (28 lines) | stat: -rw-r--r-- 965 bytes parent folder | download | duplicates (3)
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
#! @PYTHON@

from cdoTest import *
import os

OPERATORS=["ensmin", "ensmax", "ensrange", "enssum", "ensavg", "ensmean", "ensstd", "ensstd1", "ensvar", "ensvar1", "ensskew", "enskurt", "ensmedian"]

os.environ['CDO_FILE_SUFFIX'] = "NULL"
MISS_VALS={"no" : ("ts_mm_5years", "{}"), "yes" : ("ts_mm_5years_m","{}m")}

test_module = TestModule()
for KEY in MISS_VALS.keys():
    WITHMISSVALS="+missvals" if (KEY == "yes") else ""
    IFILES=f'{os.getpid()}ts_year'
    FILE=f'{DATAPATH}/{MISS_VALS[KEY][0]}'
    test_module.prepare(f'{CDO} splityear {FILE} {os.getpid()}ts_year')
    for OPERATOR in OPERATORS:
        RFORMAT=MISS_VALS[KEY][1].format(OPERATOR)
        RFILE=f'{DATAPATH}/{RFORMAT}_ref'
        OFILE=f'{RFORMAT}_ref'
        t = TAPTest(f'{OPERATOR}   {WITHMISSVALS}')
        t.add(f'{CDO} {OPERATOR} {IFILES}???? {OFILE}')
        t.diff(OFILE,RFILE)
        t.clean(OFILE)
        test_module.add(t)

test_module.clean(IFILES+"*")
test_module.run()