mirror of https://github.com/ecmwf/eccodes.git
ECC-1766: Addition of test along with a few small tweaks.
This commit is contained in:
parent
eff55b72bc
commit
8f366f2d76
|
@ -21,6 +21,7 @@
|
|||
39 39 4DVar model errors for long window 4Dvar system
|
||||
41 41 The Flood Awareness System
|
||||
42 42 Lead Centre for Wave Forecast Verification
|
||||
43 43 EERIE project MARS labelling
|
||||
60 60 Ocean data analysis date and analysis time
|
||||
192 192 Multiple ECMWF local definitions
|
||||
300 300 Multi-dimensional parameters (deprecated)
|
||||
|
|
|
@ -1,10 +1,20 @@
|
|||
# Class ed EERIE project climate keywords
|
||||
|
||||
# CMIP related activity keyword
|
||||
codetable[2] activity "grib2/destine_activity.table" ;
|
||||
alias mars.activity = activity;
|
||||
|
||||
# CMIP related experiment keyword
|
||||
codetable[2] experiment "grib2/destine_experiment.table" ;
|
||||
alias mars.experiment = experiment;
|
||||
|
||||
# Climate run realization keyword, which relates to an initial condition perturbation
|
||||
unsigned[1] realization = 255 ;
|
||||
alias mars.realization = realization;
|
||||
|
||||
# Remove mars domain from this data
|
||||
unalias mars.domain;
|
||||
|
||||
# Add some padding just in case we want more keys in the future
|
||||
pad padding_loc43(30);
|
||||
|
||||
|
|
|
@ -144,6 +144,7 @@ if( HAVE_BUILD_TOOLS )
|
|||
grib_ecc-1671
|
||||
grib_ecc-1708
|
||||
grib_ecc-1691
|
||||
grib_ecc-1766
|
||||
bufr_ecc-1028
|
||||
bufr_ecc-1195
|
||||
bufr_ecc-1259
|
||||
|
|
|
@ -0,0 +1,45 @@
|
|||
#!/bin/sh
|
||||
# (C) Copyright 2005- ECMWF.
|
||||
#
|
||||
# This software is licensed under the terms of the Apache Licence Version 2.0
|
||||
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
|
||||
#
|
||||
# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
|
||||
# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
|
||||
#
|
||||
|
||||
. ./include.ctest.sh
|
||||
|
||||
REDIRECT=/dev/null
|
||||
|
||||
# ECC-1766: EERIE project metadata support
|
||||
|
||||
label="grib_ecc-1766_test"
|
||||
temp_grib=temp.$label.grib
|
||||
eerie_sample=temp.$label.eerie.grib
|
||||
sample_grib2=$ECCODES_SAMPLES_PATH/GRIB2.tmpl
|
||||
|
||||
tablesVersionLatest=$( ${tools_dir}/grib_get -p tablesVersionLatest $sample_grib2 )
|
||||
|
||||
# Setup GRIB message with MARS keys
|
||||
# Set latest tables version and add local section with MARS labeling
|
||||
${tools_dir}/grib_set -s tablesVersion=$tablesVersionLatest,setLocalDefinition=1 $sample_grib2 $temp_grib
|
||||
|
||||
# Then change to EERIE project GRIB message --> grib2LocalSectionNumber=43
|
||||
${tools_dir}/grib_set -s grib2LocalSectionNumber=43,class=ed $temp_grib $eerie_sample
|
||||
|
||||
# Check EERIE related keys are present and correct
|
||||
grib_check_key_exists $eerie_sample activity,experiment,realization
|
||||
grib_check_key_equals $eerie_sample "activity,experiment,realization" "0 0 255"
|
||||
|
||||
# Check domain key is unaliased
|
||||
[ $( ${tools_dir}/grib_get -f -p mars.domain $eerie_sample ) = "not_found" ]
|
||||
|
||||
# Check an example where a few additional things are set
|
||||
${tools_dir}/grib_set -s activity=1,experiment=1,realization=1 $eerie_sample $temp_grib
|
||||
|
||||
grib_check_key_equals $temp_grib "activity,experiment,realization" "1 1 1"
|
||||
grib_check_key_equals $temp_grib "activity:s,experiment:s" "CMIP6 hist"
|
||||
|
||||
# Clean up
|
||||
rm -f $temp_grib $eerie_sample
|
Loading…
Reference in New Issue