Skip to content

Commit a94ae91

Browse files
authored
Merge pull request #180 from Unidata/filterupdate.dmh
Get filter test to work with Fortran
2 parents 5537c81 + c2d19e9 commit a94ae91

File tree

4 files changed

+27
-18
lines changed

4 files changed

+27
-18
lines changed

nf_test4/CMakeLists.txt

+4-3
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,10 @@ if (USE_NETCDF4)
4747
ENDIF (TEST_PARALLEL)
4848

4949
IF(ENABLE_FILTER_TEST)
50-
LIST(APPEND check_PROGRAMS ftst_filter)
51-
LIST(APPEND CLEANFILES ftst_filter.nc)
52-
SET(ftst_filter_SOURCES ftst_filter.F)
50+
SET(check_PROGRAMS ${check_PROGRAMS} ftst_filter)
51+
SET(SCRIPT_TESTS ${SCRIPT_TESTS} run_tst_filter)
52+
# Add executables
53+
build_bin_test(ftst_filter ".F")
5354
ENDIF(ENABLE_FILTER_TEST)
5455

5556
endif(USE_NETCDF4)

nf_test4/Makefile.am

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ endif # TEST_PARALLEL
5353
# Test filters.
5454
if TEST_FILTERS
5555
check_PROGRAMS += ftst_filter
56-
TESTS += ftst_filter
5756
ftst_filter_SOURCES = ftst_filter.F
57+
TESTS += run_tst_filter.sh
5858
endif
5959

6060
# If sed is present, generate these tests at build time. They are the

nf_test4/ftst_filter.F

+14-14
Original file line numberDiff line numberDiff line change
@@ -54,62 +54,62 @@ program ftst_filter
5454

5555
C Create the netCDF file.
5656
retval = nf_create(FILE_NAME, NF_CLOBBER+NF_NETCDF4, ncid)
57-
if (retval .ne. nf_noerr) stop retval
57+
if (retval .ne. nf_noerr) stop 1
5858

5959
C Define the dimensions.
6060
retval = nf_def_dim(ncid, "x", NX, x_dimid)
61-
if (retval .ne. nf_noerr) stop retval
61+
if (retval .ne. nf_noerr) stop 1
6262
retval = nf_def_dim(ncid, "y", NY, y_dimid)
63-
if (retval .ne. nf_noerr) stop retval
63+
if (retval .ne. nf_noerr) stop 1
6464

6565
C Define the variable.
6666
dimids(1) = y_dimid
6767
dimids(2) = x_dimid
6868
retval = nf_def_var(ncid, "data", NF_INT64, NDIMS, dimids, varid)
69-
if (retval .ne. nf_noerr) stop retval
69+
if (retval .ne. nf_noerr) stop 1
7070

7171
C Turn on chunking.
7272
chunks(1) = NY
7373
chunks(2) = NX
7474
retval = nf_def_var_chunking(ncid, varid, 0, chunks)
75-
if (retval .ne. nf_noerr) stop retval
75+
if (retval .ne. nf_noerr) stop 1
7676

7777
C Set bzip filter on variable
7878
params(1) = 9
7979
retval = nf_def_var_filter(ncid, varid, 307, 1, params)
80-
if (retval .ne. nf_noerr) stop retval
80+
if (retval .ne. nf_noerr) stop 1
8181

8282
retval = nf_enddef(ncid)
83-
if (retval .ne. nf_noerr) stop retval
83+
if (retval .ne. nf_noerr) stop 1
8484

8585
C Write the pretend data to the file.
8686
retval = nf_put_var_int(ncid, varid, data_out)
87-
if (retval .ne. nf_noerr) stop retval
87+
if (retval .ne. nf_noerr) stop 1
8888

8989
C Close the file.
9090
retval = nf_close(ncid)
91-
if (retval .ne. nf_noerr) stop retval
91+
if (retval .ne. nf_noerr) stop 1
9292

9393
C Reopen the file and check again.
9494
retval = nf_open(FILE_NAME, NF_NOWRITE, ncid)
95-
if (retval .ne. nf_noerr) stop retval
95+
if (retval .ne. nf_noerr) stop 1
9696

9797
C Find our variable.
9898
retval = nf_inq_varid(ncid, "data", varid)
99-
if (retval .ne. nf_noerr) stop retval
99+
if (retval .ne. nf_noerr) stop 1
100100
if (varid .ne. 1) stop 2
101101

102102
C Check the filter
103103
params(1) = -1
104104
retval = nf_inq_var_filter(ncid, varid, filterid, nparams, params)
105-
if (retval .ne. nf_noerr) stop retval
105+
if (retval .ne. nf_noerr) stop 1
106106
if (filterid .ne. 307) stop 2
107107
if (nparams .ne. 1) stop 2
108108
if (params(1) .ne. 9) stop 2
109109

110110
C Read the data and check it.
111111
retval = nf_get_var_int(ncid, varid, data_in)
112-
if (retval .ne. nf_noerr) stop retval
112+
if (retval .ne. nf_noerr) stop 1
113113
do x = 1, NX
114114
do y = 1, NY
115115
if (data_in(y, x) .ne. data_out(y, x)) stop 2
@@ -118,7 +118,7 @@ program ftst_filter
118118

119119
C Close the file.
120120
retval = nf_close(ncid)
121-
if (retval .ne. nf_noerr) stop retval
121+
if (retval .ne. nf_noerr) stop 1
122122

123123
print *,'*** SUCCESS!'
124124
end

nf_test4/run_tst_filter.sh

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#!/bin/sh
2+
3+
# Assume that netcdf-c installed bzip2 plugin
4+
PLUGINDIR=`../nf-config --prefix`
5+
export HDF5_PLUGIN_PATH="${PLUGINDIR}/lib"
6+
./ftst_filter
7+
8+

0 commit comments

Comments
 (0)