#!/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 if [ $HAVE_GEOGRAPHY -eq 0 ]; then exit 0 fi # --------------------------------------------------------- # This is the test for the JIRA issue ECC-1397 # grib_ls -j -l command (JSON for nearest) # --------------------------------------------------------- label="grib_ecc-1397_test" tempOut1=temp.${label}.1.out tempOut2=temp.${label}.2.out # Decide if we have the JSON verifier commandline utility JSON_VERIF="json_xs" JSON_CHECK="" if command -v $JSON_VERIF >/dev/null 2>&1; then JSON_CHECK=$JSON_VERIF fi # Check the json_xs command actually works! set +e echo '[]' | json_xs > /dev/null 2>&1 if [ $? -ne 0 ]; then JSON_CHECK=""; fi set -e echo "Using $JSON_CHECK ..." # Check number of lines printed input=$ECCODES_SAMPLES_PATH/GRIB2.tmpl ${tools_dir}/grib_ls -j -l 51.0,1.0,1 $input > $tempOut1 numlines1=`wc -l $tempOut1 | awk '{print $1}'` [ $numlines1 -eq 10 ] ${tools_dir}/grib_ls -j -l 51.0,1.0,4 $input > $tempOut2 numlines2=`wc -l $tempOut2 | awk '{print $1}'` [ $numlines2 -eq 13 ] # When mode=1, do not print "selected" set +e grep -q "selected" $tempOut1 status=$? set -e [ $status -ne 0 ] # It should be there when mode=4 grep -q "selected" $tempOut2 # Verify validity of JSON if test "x$JSON_CHECK" != "x"; then $JSON_VERIF < $tempOut1 $JSON_VERIF < $tempOut2 fi # Clean up rm -f $tempOut1 $tempOut2