skip tests that are incompatible with the earlier PnetCDF versions, eg. 1.6.0, 1.6.1 and 1.7.0

This commit is contained in:
Wei-keng Liao 2016-11-18 01:29:59 -06:00
parent 38e40a14d2
commit 33865dfbf8
5 changed files with 153 additions and 97 deletions

View File

@ -10,7 +10,7 @@ dnl
* Copyright (C) 2003, Northwestern University and Argonne National Laboratory
* See COPYRIGHT notice in top-level directory.
*/
/* $Id: test_get.m4 2611 2016-11-11 19:26:14Z wkliao $ */
/* $Id: test_get.m4 2630 2016-11-17 06:35:10Z wkliao $ */
dnl
dnl The command-line m4 macro "PNETCDF" is to differentiate PnetCDF and netCDF
@ -21,6 +21,17 @@ dnl
#include "tests.h"
ifdef(`PNETCDF',,`dnl
#ifdef USE_PNETCDF
#include <pnetcdf.h>
#ifndef PNETCDF_VERSION_MAJOR
#error("PNETCDF_VERSION_MAJOR is not defined in pnetcdf.h")
#endif
#ifndef PNETCDF_VERSION_MINOR
#error("PNETCDF_VERSION_MAJOR is not defined in pnetcdf.h")
#endif
#endif')
define(`EXPECT_ERR',`error("expecting $1 but got %s",nc_err_code_name($2));')dnl
define(`IntType', `ifdef(`PNETCDF',`MPI_Offset',`size_t')')dnl
@ -40,6 +51,22 @@ define(`GetVars',`ifdef(`PNETCDF',`ncmpi_get_vars_$1_all',`nc_get_vars_$1')')dnl
define(`GetVarm',`ifdef(`PNETCDF',`ncmpi_get_varm_$1_all',`nc_get_varm_$1')')dnl
define(`GetAtt', `ifdef(`PNETCDF',`ncmpi_get_att_$1',`nc_get_att_$1')')dnl
define(`PNETCDF_CHECK_ERANGE',`dnl
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,`
`#'if !defined(USE_PNETCDF) || (PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR>=8)')',
`$1',`schar',`ifdef(`PNETCDF',,`
`#'if defined(USE_PNETCDF) && PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR<7
else if (cdf_format < NC_FORMAT_CDF5) {
`#'else')')
else {
ifelse(`$1',`schar',`ifdef(`PNETCDF',,``#'endif')')
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
ELSE_NOK
}
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'endif')')'
)dnl
undefine(`index')dnl
dnl dnl dnl
dnl
@ -121,7 +148,9 @@ ifdef(`PNETCDF',`dnl
CheckRange($1, expect)) {
IF (err != NC_NOERR) EXPECT_ERR(NC_NOERR, err)
}
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'if !defined(USE_PNETCDF) || (PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR>7)')')
else IF (err != NC_ERANGE) EXPECT_ERR(NC_ERANGE, err)
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'endif')')
}
else IF (err != NC_EINVALCOORDS) {
EXPECT_ERR(NC_EINVALCOORDS, err)
@ -174,11 +203,8 @@ ifdef(`PNETCDF',`dnl
}
ELSE_NOK
}
} else {
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
ELSE_NOK
}
PNETCDF_CHECK_ERANGE($1)
} else {
IF (err != NC_NOERR && err != NC_ERANGE)
EXPECT_ERR(NC_NOERR or NC_ERANGE, err)
@ -236,13 +262,13 @@ TestFunc(var)_$1(VarArgs)
/* check if can detect a bad file ID */
err = GetVar($1)(BAD_ID, 0, value);
IF (err != NC_EBADID)
error("expecting NC_EBADID but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_EBADID, err)
ELSE_NOK
/* check if can detect a bad variable ID */
err = GetVar($1)(ncid, BAD_VARID, value);
IF (err != NC_ENOTVAR)
error("expecting NC_ENOTVAR but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ENOTVAR, err)
ELSE_NOK
for (i = 0; i < numVars; i++) {
@ -275,10 +301,8 @@ TestFunc(var)_$1(VarArgs)
if (allInIntRange) {
IF (err != NC_NOERR)
EXPECT_ERR(NC_NOERR, err)
} else {
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
}
PNETCDF_CHECK_ERANGE($1)
} else {
IF (err != NC_NOERR && err != NC_ERANGE)
EXPECT_ERR(NC_NOERR or NC_ERANGE, err)
@ -360,12 +384,12 @@ TestFunc(vara)_$1(VarArgs)
err = GetVara($1)(BAD_ID, 0, NULL, NULL, value);
IF (err != NC_EBADID)
error("expecting NC_EBADID but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_EBADID, err)
ELSE_NOK
err = GetVara($1)(ncid, BAD_VARID, NULL, NULL, value);
IF (err != NC_ENOTVAR)
error("expecting NC_ENOTVAR but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ENOTVAR, err)
ELSE_NOK
for (i = 0; i < numVars; i++) {
@ -400,7 +424,9 @@ ifdef(`PNETCDF',`dnl
CheckRange($1, expect[0])) {
IF (err != NC_NOERR) EXPECT_ERR(NC_NOERR, err)
}
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'if !defined(USE_PNETCDF) || (PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR>7)')')
else IF (err != NC_ERANGE) EXPECT_ERR(NC_ERANGE, err)
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'endif')')
}
else IF (err != NC_EINVALCOORDS) {
EXPECT_ERR(NC_EINVALCOORDS, err)
@ -411,7 +437,7 @@ ifdef(`PNETCDF',`dnl
err = GetVara($1)(ncid, i, start, NULL, value);
if (!canConvert) {
IF (err != NC_ECHAR)
error("expecting NC_ECHAR, but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ECHAR, err)
ELSE_NOK
}
else if (var_rank[i] == 0) {
@ -485,7 +511,9 @@ ifdef(`PNETCDF',`dnl
CheckRange($1, expect[0])) {
IF (err != NC_NOERR) EXPECT_ERR(NC_NOERR, err)
}
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'if !defined(USE_PNETCDF) || (PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR>7)')')
else IF (err != NC_ERANGE) EXPECT_ERR(NC_ERANGE, err)
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'endif')')
} else {
IF (err != NC_NOERR)
EXPECT_ERR(NC_NOERR, err)
@ -533,10 +561,8 @@ ifdef(`PNETCDF',`dnl
if (allInIntRange) {
IF (err != NC_NOERR)
EXPECT_ERR(NC_NOERR, err)
} else {
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
}
PNETCDF_CHECK_ERANGE($1)
} else {
IF (err != NC_NOERR && err != NC_ERANGE)
EXPECT_ERR(NC_NOERR or NC_ERANGE, err)
@ -622,12 +648,12 @@ TestFunc(vars)_$1(VarArgs)
err = GetVars($1)(BAD_ID, 0, NULL, NULL, NULL, value);
IF (err != NC_EBADID)
error("expecting NC_EBADID but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_EBADID, err)
ELSE_NOK
err = GetVars($1)(ncid, BAD_VARID, NULL, NULL, NULL, value);
IF (err != NC_ENOTVAR)
error("expecting NC_ENOTVAR but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ENOTVAR, err)
ELSE_NOK
for (i = 0; i < numVars; i++) {
@ -674,7 +700,7 @@ ifdef(`PNETCDF',`dnl
err = GetVars($1)(ncid, i, start, NULL, NULL, value);
if (!canConvert) {
IF (err != NC_ECHAR)
error("expecting NC_ECHAR, but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ECHAR, err)
ELSE_NOK
}
else if (var_rank[i] == 0) {
@ -742,11 +768,13 @@ ifdef(`PNETCDF',`dnl
IF (err != NC_EINVALCOORDS)
EXPECT_ERR(NC_EINVALCOORDS, err)
start[j] = 0;
ifdef(`PNETCDF',,``#'if !defined(USE_PNETCDF) || (PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR>=7)')
stride[j] = 0;
err = GetVars($1)(ncid, i, start, edge, stride, value);
IF (err != NC_ESTRIDE)
EXPECT_ERR(NC_ESTRIDE, err)
stride[j] = 1;
ifdef(`PNETCDF',,``#'endif')
}
err = GetVars($1)(ncid, i, start, edge, stride, value);
@ -759,7 +787,9 @@ ifdef(`PNETCDF',`dnl
CheckRange($1, expect[0])) {
IF (err != NC_NOERR) EXPECT_ERR(NC_NOERR, err)
}
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'if !defined(USE_PNETCDF) || (PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR>7)')')
else IF (err != NC_ERANGE) EXPECT_ERR(NC_ERANGE, err)
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'endif')')
} else {
IF (err != NC_NOERR)
EXPECT_ERR(NC_NOERR, err)
@ -827,10 +857,8 @@ ifdef(`PNETCDF',`dnl
if (allInIntRange) {
IF (err != NC_NOERR)
EXPECT_ERR(NC_NOERR, err)
} else {
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
}
PNETCDF_CHECK_ERANGE($1)
} else {
IF (err != NC_NOERR && err != NC_ERANGE)
EXPECT_ERR(NC_NOERR or NC_ERANGE, err)
@ -918,12 +946,12 @@ TestFunc(varm)_$1(VarArgs)
err = GetVarm($1)(BAD_ID, 0, NULL, NULL, NULL, NULL, value);
IF (err != NC_EBADID)
error("expecting NC_EBADID but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_EBADID, err)
ELSE_NOK
err = GetVarm($1)(ncid, BAD_VARID, NULL, NULL, NULL, NULL, value);
IF (err != NC_ENOTVAR)
error("expecting NC_ENOTVAR but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ENOTVAR, err)
ELSE_NOK
for (i = 0; i < numVars; i++) {
@ -950,7 +978,7 @@ ifdef(`PNETCDF',`dnl
err = GetVarm($1)(ncid, i, NULL, NULL, NULL, NULL, value);
if (!canConvert) {
IF (err != NC_ECHAR)
error("expecting NC_ECHAR, but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ECHAR, err)
ELSE_NOK
}
else if (var_rank[i] == 0) {
@ -971,7 +999,7 @@ ifdef(`PNETCDF',`dnl
err = GetVarm($1)(ncid, i, start, NULL, NULL, NULL, value);
if (!canConvert) {
IF (err != NC_ECHAR)
error("expecting NC_ECHAR, but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ECHAR, err)
ELSE_NOK
}
else if (var_rank[i] == 0) {
@ -1038,11 +1066,13 @@ ifdef(`PNETCDF',`dnl
IF (err != NC_EINVALCOORDS)
EXPECT_ERR(NC_EINVALCOORDS, err)
start[j] = 0;
ifdef(`PNETCDF',,``#'if !defined(USE_PNETCDF) || (PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR>=7)')
stride[j] = 0;
err = GetVarm($1)(ncid, i, start, edge, stride, imap, value);
IF (err != NC_ESTRIDE)
EXPECT_ERR(NC_ESTRIDE, err)
stride[j] = 1;
ifdef(`PNETCDF',,``#'endif')
}
err = GetVarm($1)(ncid, i, start, edge, stride, imap, value);
@ -1055,7 +1085,9 @@ ifdef(`PNETCDF',`dnl
CheckRange($1, expect[0])) {
IF (err != NC_NOERR) EXPECT_ERR(NC_NOERR, err)
}
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'if !defined(USE_PNETCDF) || (PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR>7)')')
else IF (err != NC_ERANGE) EXPECT_ERR(NC_ERANGE, err)
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'endif')')
} else {
IF (err != NC_NOERR)
EXPECT_ERR(NC_NOERR, err)
@ -1129,10 +1161,8 @@ ifdef(`PNETCDF',`dnl
if (allInIntRange) {
IF (err != NC_NOERR)
EXPECT_ERR(NC_NOERR, err)
} else {
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
}
PNETCDF_CHECK_ERANGE($1)
} else {
IF (err != NC_NOERR && err != NC_ERANGE)
EXPECT_ERR(NC_NOERR or NC_ERANGE, err)
@ -1214,12 +1244,12 @@ TestFunc(att)_$1(AttVarArgs)
err = GetAtt($1)(BAD_ID, 0, NULL, value);
IF (err != NC_EBADID)
error("expecting NC_EBADID but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_EBADID, err)
ELSE_NOK
err = GetAtt($1)(ncid, BAD_VARID, NULL, value);
IF (err != NC_ENOTVAR)
error("expecting NC_ENOTVAR but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ENOTVAR, err)
ELSE_NOK
for (i = -1; i < numVars; i++) {
@ -1228,18 +1258,21 @@ TestFunc(att)_$1(AttVarArgs)
err = GetAtt($1)(ncid, BAD_VARID, ATT_NAME(i,j), value);
IF (err != NC_ENOTVAR)
error("expecting NC_ENOTVAR but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ENOTVAR, err)
ELSE_NOK
ifdef(`PNETCDF',,``#'if !defined(USE_PNETCDF) || (PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR>7)')
/* check if can detect a bad name */
err = GetAtt($1)(ncid, i, NULL, NULL);
IF (err != NC_EBADNAME)
error("expecting NC_EBADNAME but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_EBADNAME, err)
ELSE_NOK
ifdef(`PNETCDF',,``#'endif')
err = GetAtt($1)(ncid, i, "noSuch", value);
IF (err != NC_ENOTATT)
error("expecting NC_ENOTATT but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ENOTATT, err)
ELSE_NOK
allInExtRange = allInIntRange = 1;
for (k = 0; k < ATT_LEN(i,j); k++) {
@ -1262,14 +1295,16 @@ TestFunc(att)_$1(AttVarArgs)
if (allInExtRange) {
if (allInIntRange) {
IF (err != NC_NOERR)
error("%s", APIFunc(strerror)(err));
EXPECT_ERR(NC_NOERR, err)
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'if !defined(USE_PNETCDF) || (PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR>7)')')
} else {
IF (err != NC_ERANGE)
error("expecting NC_ERANGE but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ERANGE, err)
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'endif')')
}
} else {
IF (err != NC_NOERR && err != NC_ERANGE)
error("expecting NC_NOERR or NC_ERANGE but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_NOERR or NC_ERANGE, err)
}
for (k = 0; k < ATT_LEN(i,j); k++) {
if (CheckNumRange($1, expect[k], ATT_TYPE(i,j))) {
@ -1303,7 +1338,7 @@ TestFunc(att)_$1(AttVarArgs)
}
} else {
IF (err != NC_ECHAR)
error("wrong type: expecting NC_ECHAR but got %s", nc_err_code_name(err));
EXPECT_ERR(NC_ECHAR, err)
}
}
}

View File

@ -10,7 +10,7 @@ dnl
* Copyright (C) 2003, Northwestern University and Argonne National Laboratory
* See COPYRIGHT notice in top-level directory.
*/
/* $Id: test_put.m4 2611 2016-11-11 19:26:14Z wkliao $ */
/* $Id: test_put.m4 2630 2016-11-17 06:35:10Z wkliao $ */
dnl
dnl The command-line m4 macro "PNETCDF" is to differentiate PnetCDF and netCDF
@ -21,6 +21,17 @@ dnl
#include "tests.h"
ifdef(`PNETCDF',,`dnl
#ifdef USE_PNETCDF
#include <pnetcdf.h>
#ifndef PNETCDF_VERSION_MAJOR
#error("PNETCDF_VERSION_MAJOR is not defined in pnetcdf.h")
#endif
#ifndef PNETCDF_VERSION_MINOR
#error("PNETCDF_VERSION_MAJOR is not defined in pnetcdf.h")
#endif
#endif')
define(`EXPECT_ERR',`error("expecting $1 but got %s",nc_err_code_name($2));')dnl
define(`IntType', `ifdef(`PNETCDF',`MPI_Offset',`size_t')')dnl
@ -44,6 +55,22 @@ define(`PutAtt', `ifdef(`PNETCDF',`ncmpi_put_att_$1',`nc_put_att_$1')')dnl
define(`GetVar1',`ifdef(`PNETCDF',`ncmpi_get_var1_$1_all',`nc_get_var1_$1')')dnl
define(`DefVars',`ifdef(`PNETCDF',`def_vars($1,$2)',`def_vars($1)')')dnl
define(`PNETCDF_CHECK_ERANGE',`dnl
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,`
`#'if !defined(USE_PNETCDF) || (PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR>=8)')',
`$1',`schar',`ifdef(`PNETCDF',,`
`#'if defined(USE_PNETCDF) && PNETCDF_VERSION_MAJOR==1 && PNETCDF_VERSION_MINOR<7
else if (cdf_format < NC_FORMAT_CDF5) {
`#'else')')
else {
ifelse(`$1',`schar',`ifdef(`PNETCDF',,``#'endif')')
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
ELSE_NOK
}
ifelse(`$1',`uchar',`ifdef(`PNETCDF',,``#'endif')')'
)dnl
undefine(`index')dnl
dnl dnl dnl
dnl
@ -276,7 +303,7 @@ check_atts_$1(int ncid, int numGatts, int numVars)
err = APIFunc(get_att_$1)(ncid, i, ATT_NAME(i,j), value);
if (nInExtRange == length && nInIntRange == length) {
IF (err != NC_NOERR)
error("%s", APIFunc(strerror)(err));
EXPECT_ERR(NC_NOERR, err)
} else {
IF (err != NC_NOERR && err != NC_ERANGE)
EXPECT_ERR(NC_NOERR or NC_ERANGE, err)
@ -428,17 +455,10 @@ ifdef(`PNETCDF',`dnl
if (canConvert) {
if (CheckRange3($1, value[0], var_type[i])) {
IF (err != NC_NOERR)
error("%s", APIFunc(strerror)(err));
ELSE_NOK
} else {
IF (err != NC_ERANGE) {
EXPECT_ERR(NC_ERANGE, err)
error("\n\t\tfor type %s value %.17e %ld",
s_nc_type(var_type[i]),
(double)value[0], (long)value[0]);
}
EXPECT_ERR(NC_NOERR, err)
ELSE_NOK
}
PNETCDF_CHECK_ERANGE($1)
} else {
IF (err != NC_ECHAR)
EXPECT_ERR(NC_ECHAR, err)
@ -545,13 +565,10 @@ TestFunc(var)_$1(VarArgs)
if (canConvert) {
if (allInExtRange) {
IF (err != NC_NOERR)
error("%s", APIFunc(strerror)(err));
ELSE_NOK
} else {
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
EXPECT_ERR(NC_NOERR, err)
ELSE_NOK
}
PNETCDF_CHECK_ERANGE($1)
} else { /* should flag wrong type even if nothing to write */
IF (err != NC_ECHAR)
EXPECT_ERR(NC_ECHAR, err)
@ -590,7 +607,7 @@ TestFunc(var)_$1(VarArgs)
if (canConvert) {
if (allInExtRange) {
IF (err != NC_NOERR)
error("%s", APIFunc(strerror)(err));
EXPECT_ERR(NC_NOERR, err)
ELSE_NOK
} else {
IF (err != NC_ERANGE)
@ -815,11 +832,8 @@ ifdef(`PNETCDF',`dnl
IF (err != NC_NOERR)
EXPECT_ERR(NC_NOERR, err)
ELSE_NOK
} else {
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
ELSE_NOK
}
PNETCDF_CHECK_ERANGE($1)
} else {
IF (err != NC_ECHAR)
EXPECT_ERR(NC_ECHAR, err)
@ -1065,13 +1079,10 @@ ifdef(`PNETCDF',`dnl
if (canConvert) {
if (allInExtRange) {
IF (err != NC_NOERR)
error("%s", APIFunc(strerror)(err));
ELSE_NOK
} else {
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
EXPECT_ERR(NC_NOERR, err)
ELSE_NOK
}
PNETCDF_CHECK_ERANGE($1)
} else {
IF (err != NC_ECHAR)
EXPECT_ERR(NC_ECHAR, err)
@ -1326,13 +1337,10 @@ ifdef(`PNETCDF',`dnl
if (canConvert) {
if (allInExtRange) {
IF (err != NC_NOERR)
error("%s", APIFunc(strerror)(err));
ELSE_NOK
} else {
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
EXPECT_ERR(NC_NOERR, err)
ELSE_NOK
}
PNETCDF_CHECK_ERANGE($1)
} else {
IF (err != NC_ECHAR)
EXPECT_ERR(NC_ECHAR, err)
@ -1398,7 +1406,7 @@ TestFunc(att)_text(AttVarArgs)
{
const char *const tval = "value for bad name";
const size_t tval_len = strlen(tval);
const IntType tval_len = (IntType)strlen(tval);
err = PutAtt(text)(ncid, 0, "", tval_len, tval);
IF (err != NC_EBADNAME)
@ -1421,7 +1429,7 @@ TestFunc(att)_text(AttVarArgs)
}
err = PutAtt(text)(ncid, i, ATT_NAME(i,j), ATT_LEN(i,j), value);
IF (err != NC_NOERR)
error("%s", APIFunc(strerror)(err));
EXPECT_ERR(NC_NOERR, err)
ELSE_NOK
}
}
@ -1505,13 +1513,10 @@ TestFunc(att)_$1(AttVarArgs)
err = PutAtt($1)(ncid, i, ATT_NAME(i,j), ATT_TYPE(i,j), ATT_LEN(i,j), value);
if (allInExtRange) {
IF (err != NC_NOERR)
error("%s", APIFunc(strerror)(err));
ELSE_NOK
} else {
IF (err != NC_ERANGE)
EXPECT_ERR(NC_ERANGE, err)
EXPECT_ERR(NC_NOERR, err)
ELSE_NOK
}
PNETCDF_CHECK_ERANGE($1)
}
}
}

View File

@ -10,7 +10,7 @@ dnl
* Copyright (C) 2003, Northwestern University and Argonne National Laboratory
* See COPYRIGHT notice in top-level directory.
*/
/* $Id: test_write.m4 2616 2016-11-14 09:19:14Z wkliao $ */
/* $Id: test_write.m4 2633 2016-11-17 22:06:42Z wkliao $ */
dnl
dnl The command-line m4 macro "PNETCDF" is to differentiate PnetCDF and netCDF
@ -621,7 +621,7 @@ TestFunc(def_dim)(VarArgs)
ELSE_NOK
ifdef(`PNETCDF', ,`if(sizeof(long) > 4) /* Fix: dmh 11/4/2011: works only if sizeof(long) > 4 */')
{
err = APIFunc(def_dim)(ncid, dim_name[i], (size_t)(NC_UNLIMITED-1), &dimid);
err = APIFunc(def_dim)(ncid, dim_name[i], (IntType)(NC_UNLIMITED-1), &dimid);
IF (err != NC_EDIMSIZE)
error("expecting NC_EDIMSIZE but got %s", nc_err_code_name(err));
ELSE_NOK
@ -1781,7 +1781,7 @@ TestFunc(copy_att)(AttVarArgs)
IF (err != NC_NOERR)
error("copy_att: %s", APIFunc(strerror)(err));
ELSE_NOK
err = APIFunc(copy_att)(ncid_out, varid, name, ncid_out, varid);
err = APIFunc(copy_att)(ncid_in, varid, name, ncid_out, varid);
IF (err != NC_NOERR)
error("source = target: %s", APIFunc(strerror)(err));
ELSE_NOK
@ -1896,7 +1896,7 @@ TestFunc(rename_att)(AttVarArgs)
nc_type datatype;
nc_type atttype;
IntType length;
size_t attlength;
IntType attlength;
char text[MAX_NELS];
double value[MAX_NELS];
double expect;

View File

@ -104,6 +104,7 @@ test_small_atts(const char *testfile)
{
/* Create null-terminated text string of correct length. */
strncpy(att, source, t);
att[t] = '\0';
/* Create a file with one attribute. */
if (file_create(testfile, NC_CLOBBER, &ncid)) ERR;

View File

@ -1311,31 +1311,21 @@ char* nc_err_code_name(int err)
case (NC_EUNSPTETYPE): return "NC_EUNSPTETYPE";
case (NC_EINVAL_REQUEST): return "NC_EINVAL_REQUEST";
case (NC_EAINT_TOO_SMALL): return "NC_EAINT_TOO_SMALL";
case (NC_ENOENT): return "NC_ENOENT";
#ifdef NC_EMULTIDEFINE
case (NC_EMULTIDEFINE): return "NC_EMULTIDEFINE";
#endif
#if PNETCDF_VERSION_MAJOR>=1 && PNETCDF_VERSION_MINOR>=3
case (NC_ENOTSUPPORT): return "NC_ENOTSUPPORT";
case (NC_ENULLBUF): return "NC_ENULLBUF";
case (NC_EPREVATTACHBUF): return "NC_EPREVATTACHBUF";
case (NC_ENULLABUF): return "NC_ENULLABUF";
case (NC_EPENDINGBPUT): return "NC_EPENDINGBPUT";
case (NC_EINSUFFBUF): return "NC_EINSUFFBUF";
case (NC_ENOENT): return "NC_ENOENT";
#endif
#if PNETCDF_VERSION_MAJOR>=1 && PNETCDF_VERSION_MINOR>=4
case (NC_EINTOVERFLOW): return "NC_EINTOVERFLOW";
case (NC_ENOTENABLED): return "NC_ENOTENABLED";
case (NC_EBAD_FILE): return "NC_EBAD_FILE";
case (NC_ENO_SPACE): return "NC_ENO_SPACE";
case (NC_EQUOTA): return "NC_EQUOTA";
case (NC_ENULLSTART): return "NC_ENULLSTART";
case (NC_ENULLCOUNT): return "NC_ENULLCOUNT";
case (NC_EINVAL_CMODE): return "NC_EINVAL_CMODE";
case (NC_EINVAL_OMODE): return "NC_EINVAL_OMODE";
case (NC_ETYPESIZE): return "NC_ETYPESIZE";
case (NC_ETYPE_MISMATCH): return "NC_ETYPE_MISMATCH";
case (NC_ETYPESIZE_MISMATCH): return "NC_ETYPESIZE_MISMATCH";
case (NC_ESTRICTCDF2): return "NC_ESTRICTCDF2";
case (NC_ENOTRECVAR): return "NC_ENOTRECVAR";
case (NC_ENOTFILL): return "NC_ENOTFILL";
case (NC_EMULTIDEFINE): return "NC_EMULTIDEFINE";
case (NC_EMULTIDEFINE_OMODE): return "NC_EMULTIDEFINE_OMODE";
case (NC_EMULTIDEFINE_CMODE): return "NC_EMULTIDEFINE_CMODE";
case (NC_EMULTIDEFINE_DIM_NUM): return "NC_EMULTIDEFINE_DIM_NUM";
case (NC_EMULTIDEFINE_DIM_SIZE): return "NC_EMULTIDEFINE_DIM_SIZE";
case (NC_EMULTIDEFINE_DIM_NAME): return "NC_EMULTIDEFINE_DIM_NAME";
@ -1353,10 +1343,35 @@ char* nc_err_code_name(int err)
case (NC_EMULTIDEFINE_ATTR_TYPE): return "NC_EMULTIDEFINE_ATTR_TYPE";
case (NC_EMULTIDEFINE_ATTR_LEN): return "NC_EMULTIDEFINE_ATTR_LEN";
case (NC_EMULTIDEFINE_ATTR_VAL): return "NC_EMULTIDEFINE_ATTR_VAL";
#endif
#if PNETCDF_VERSION_MAJOR>=1 && PNETCDF_VERSION_MINOR>=5
case (NC_ENOTENABLED): return "NC_ENOTENABLED";
case (NC_EBAD_FILE): return "NC_EBAD_FILE";
case (NC_ENO_SPACE): return "NC_ENO_SPACE";
case (NC_EQUOTA): return "NC_EQUOTA";
case (NC_EMULTIDEFINE_FNC_ARGS): return "NC_EMULTIDEFINE_FNC_ARGS";
#endif
#if PNETCDF_VERSION_MAJOR>=1 && PNETCDF_VERSION_MINOR>=6
case (NC_EINVAL_CMODE): return "NC_EINVAL_CMODE";
case (NC_ENULLSTART): return "NC_ENULLSTART";
case (NC_ENULLCOUNT): return "NC_ENULLCOUNT";
case (NC_ETYPESIZE_MISMATCH): return "NC_ETYPESIZE_MISMATCH";
case (NC_ETYPESIZE): return "NC_ETYPESIZE";
case (NC_ETYPE_MISMATCH): return "NC_ETYPE_MISMATCH";
case (NC_ESTRICTCDF2): return "NC_ESTRICTCDF2";
#endif
#if PNETCDF_VERSION_MAJOR>=1 && PNETCDF_VERSION_MINOR>=7
case (NC_ENOTRECVAR): return "NC_ENOTRECVAR";
case (NC_ENOTFILL): return "NC_ENOTFILL";
case (NC_EMULTIDEFINE_FILL_MODE): return "NC_EMULTIDEFINE_FILL_MODE";
case (NC_EMULTIDEFINE_VAR_FILL_MODE): return "NC_EMULTIDEFINE_VAR_FILL_MODE";
case (NC_EMULTIDEFINE_VAR_FILL_VALUE): return "NC_EMULTIDEFINE_VAR_FILL_VALUE";
#endif
#if PNETCDF_VERSION_MAJOR>=1 && PNETCDF_VERSION_MINOR>=8
case (NC_EPENDING): return "NC_EPENDING";
case (NC_EINVAL_OMODE): return "NC_EINVAL_OMODE";
case (NC_EMULTIDEFINE_CMODE): return "NC_EMULTIDEFINE_CMODE";
#endif
#endif
default:
sprintf(unknown_str,"Unknown code %d",err);