9 #ifndef _NETCDFREADER_TEST_H_
10 #define _NETCDFREADER_TEST_H_
16 #include <cxxtest/TestSuite.h>
34 TS_ASSERT_DIFFERS( (
int )(
size_t ) netCdfReader, 0 );
36 if( NULL != netCdfReader )
50 TS_ASSERT_DIFFERS( (
int )(
size_t ) netCdfReader, 0 );
52 if( NULL != netCdfReader )
54 TS_ASSERT( netCdfReader->findDim(
"latitude" ) );
55 TS_ASSERT( netCdfReader->findDim(
"longitude" ) );
57 TS_ASSERT( netCdfReader->findAtt(
"name" ) );
63 TS_ASSERT( netCdfReader->findAtt( *var,
"units" ) );
78 TS_ASSERT_DIFFERS( (
int )(
size_t ) netCdfReader, 0 );
80 if( NULL != netCdfReader )
87 TS_ASSERT( netCdfReader->readStr( attString, *att ) );
88 TS_ASSERT_EQUALS( attString,
"Distance from shore, central California region" );
95 att = netCdfReader->findAtt( *var,
"units" );
99 TS_ASSERT( netCdfReader->readStr( attString, *att ) );
100 TS_ASSERT_EQUALS( attString,
"m" );
116 TS_ASSERT_DIFFERS( (
int )(
size_t ) netCdfReader, 0 );
118 if( NULL != netCdfReader )
126 TS_ASSERT_DELTA( theFloat, 35.0, 1e-4 );
128 TS_ASSERT_DELTA( theFloat, 37.8, 1e-4 );
130 var = netCdfReader->findVar(
"longitude" );
135 TS_ASSERT_DELTA( theFloat, -123.8, 1e-4 );
137 TS_ASSERT_DELTA( theFloat, -121.0, 1e-4 );
139 var = netCdfReader->findVar(
"distance" );
144 TS_ASSERT_DELTA( theFloat, 224.5141, 1e-4 );
158 TS_ASSERT_DIFFERS( (
int )(
size_t ) netCdfReader, 0 );
160 if( NULL != netCdfReader )
168 TS_ASSERT_DELTA( theFloats[0], -123.50, 1e-4 );
169 TS_ASSERT_DELTA( theFloats[1], -123.49, 1e-4 );
170 TS_ASSERT_DELTA( theFloats[2], -123.48, 1e-4 );
184 TS_ASSERT_DIFFERS( (
int )(
size_t ) netCdfReader, 0 );
186 if( NULL != netCdfReader )
194 TS_ASSERT_DELTA( theFloat, 224.5141, 1e-4 );
196 TS_ASSERT_DELTA( theFloat, 41.8181, 1e-4 );
198 TS_ASSERT_DELTA( theFloat, 96.3373, 1e-4 );
210 TS_ASSERT( netCdfReader );
212 if( NULL != netCdfReader )
214 float theFloats[3][3];
220 TS_ASSERT_DELTA( theFloats[0][0], 182.2367, 1e-4 );
221 TS_ASSERT_DELTA( theFloats[0][1], 181.5249, 1e-4 );
222 TS_ASSERT_DELTA( theFloats[0][2], 180.8149, 1e-4 );
223 TS_ASSERT_DELTA( theFloats[1][0], 181.5502, 1e-4 );
224 TS_ASSERT_DELTA( theFloats[1][1], 180.8359, 1e-4 );
225 TS_ASSERT_DELTA( theFloats[1][2], 180.1232, 1e-4 );
226 TS_ASSERT_DELTA( theFloats[2][0], 180.8680, 1e-4 );
227 TS_ASSERT_DELTA( theFloats[2][1], 180.1511, 1e-4 );
228 TS_ASSERT_DELTA( theFloats[2][2], 179.4357, 1e-4 );
236 #endif // _NETCDFREADER_TEST_H
void testReadFloatVar2D(void)
Definition: NetCdfReader_Test.h:178
NetCdfVar * findVar(const Str &name)
Finds a variable by name Returns NULL if error.
Definition: NetCdf.cpp:80
void testConstructorDestructor(void)
Definition: NetCdfReader_Test.h:28
Contains the NetCdfReader class declaration.
static NetCdfReader * NewNetCdfReader(const char *fileName)
Returns an newNetCdfReader of a NetCdfReader for a file.
Definition: NetCdfReader.cpp:15
void testReadFloatVar2DRange(void)
Definition: NetCdfReader_Test.h:206
Replacement for standard template class string.
Definition: Str.h:12
void testFindAttsDimsVars(void)
Definition: NetCdfReader_Test.h:44
A very compact, very simple netCDF reader with a minimal feature set.
Definition: NetCdfReader.h:21
Units tests for class NetCdfReader
Definition: NetCdfReader_Test.h:23
void testReadFloatVar1DRange(void)
Definition: NetCdfReader_Test.h:152
bool read2DArray(void *assignTo, const NetCdfType assignType, const NetCdfVar &var, const unsigned long index1a, const unsigned long index1b, const unsigned long index2a, const unsigned long index2b)
Reads a 2D range of the variable between 2 pairs of indices (a <= index <= b) into an existing 2D arr...
Definition: NetCdfReader.cpp:155
void testReadFloatVar1D(void)
Definition: NetCdfReader_Test.h:110
void testReadStringAtt(void)
Definition: NetCdfReader_Test.h:72