From eb7196e0ade499fcbe83d4b71ae6402375a8ef7f Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Tue, 25 Jan 2022 16:51:37 +0000 Subject: [PATCH] Testing: add test for skipExtraKeyAttributes --- tests/CMakeLists.txt | 1 + tests/bufr_filter_skipExtraKeyAttributes.sh | 60 +++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100755 tests/bufr_filter_skipExtraKeyAttributes.sh diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 9d6d4376e..045320603 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -141,6 +141,7 @@ if( HAVE_BUILD_TOOLS ) bufr_filter_extract_datetime bufr_filter_extract_area bufr_filter_unpack_pack + bufr_filter_skipExtraKeyAttributes bufr_indexing bufr_json_data bufr_ls diff --git a/tests/bufr_filter_skipExtraKeyAttributes.sh b/tests/bufr_filter_skipExtraKeyAttributes.sh new file mode 100755 index 000000000..3f2bd8f2b --- /dev/null +++ b/tests/bufr_filter_skipExtraKeyAttributes.sh @@ -0,0 +1,60 @@ +#!/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.sh + +set -u +cd ${data_dir}/bufr + +# Define a common label for all the tmp files +label="bufr_filter_skip_test" + +tempFilt=temp.${label}.filter +tempRef=temp.${label}.ref +tempOut=temp.${label}.txt + +input="ship_14.bufr" + +# Decode fully including extra attributes +# --------------------------------------- +cat > $tempFilt <units=[windDirectionAt10M->units]"; +EOF +cat $tempFilt +${tools_dir}/codes_bufr_filter -f $tempFilt $input > $tempOut +cat > $tempRef <units=deg +EOF +diff $tempRef $tempOut + + + +# Decode excluding extra attributes +# --------------------------------------- +cat > $tempFilt <units=[windDirectionAt10M->units]"; +EOF +cat $tempFilt +${tools_dir}/codes_bufr_filter -f $tempFilt $input > $tempOut +cat > $tempRef <units=undef +EOF +diff $tempRef $tempOut + + +# Clean up +rm -f $tempFilt $tempRef $tempOut