[cig-commits] r6464 - in cs/spatialdata-0.1/trunk: .
libsrc/geocoords tests/libtests/spatialdb
brad at geodynamics.org
brad at geodynamics.org
Thu Mar 29 15:59:19 PDT 2007
Author: brad
Date: 2007-03-29 15:59:18 -0700 (Thu, 29 Mar 2007)
New Revision: 6464
Modified:
cs/spatialdata-0.1/trunk/configure.ac
cs/spatialdata-0.1/trunk/libsrc/geocoords/Geoid.cc
cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/TestSimpleDB.cc
Log:
Fixed bug in testing SimpleDB (need to account for expected values equal to zero). Fixed endian test for Geoid data file.
Modified: cs/spatialdata-0.1/trunk/configure.ac
===================================================================
--- cs/spatialdata-0.1/trunk/configure.ac 2007-03-29 20:46:44 UTC (rev 6463)
+++ cs/spatialdata-0.1/trunk/configure.ac 2007-03-29 22:59:18 UTC (rev 6464)
@@ -117,6 +117,9 @@
fi
fi
+# ENDIANNESS
+AC_C_BIGENDIAN([],[])
+
# ----------------------------------------------------------------------
AC_CONFIG_FILES([Makefile
libsrc/Makefile
Modified: cs/spatialdata-0.1/trunk/libsrc/geocoords/Geoid.cc
===================================================================
--- cs/spatialdata-0.1/trunk/libsrc/geocoords/Geoid.cc 2007-03-29 20:46:44 UTC (rev 6463)
+++ cs/spatialdata-0.1/trunk/libsrc/geocoords/Geoid.cc 2007-03-29 22:59:18 UTC (rev 6464)
@@ -21,6 +21,13 @@
#include <sstream> // USES std::ostringstream
#include <stdexcept> // USES std::runtime_error
+#if defined(WORDS_BIGENDIAN)
+#define NATIVE_BIG_ENDIAN
+#else
+#define NATIVE_LITTLE_ENDIAN
+#endif
+
+#if 0
#if defined(__BYTE_ORDER)
#if __BYTE_ORDER == __BIG_ENDIAN || __BYTE_ORDER == _BIG_ENDIAN
#define NATIVE_BIG_ENDIAN
@@ -38,6 +45,7 @@
#error Unable to determine endian type
#endif // ENDIAN cases
#endif // __BYTE_ORDER defined
+#endif
#define MAKEDATAFILE(file) #file
Modified: cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/TestSimpleDB.cc
===================================================================
--- cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/TestSimpleDB.cc 2007-03-29 20:46:44 UTC (rev 6463)
+++ cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/TestSimpleDB.cc 2007-03-29 22:59:18 UTC (rev 6464)
@@ -154,88 +154,15 @@
else
CPPUNIT_ASSERT(0 == err);
for (int iVal=0; iVal < numVals; ++iVal)
- CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0, vals[iVal]/valsE[numVals-iVal-1],
- tolerance);
+ if (valsE[numVals-iVal-1] > tolerance)
+ CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0, vals[iVal]/valsE[numVals-iVal-1],
+ tolerance);
+ else
+ CPPUNIT_ASSERT_DOUBLES_EQUAL(valsE[numVals-iVal-1], vals[iVal],
+ tolerance);
} // for
delete[] vals; vals = 0;
} // _checkQuery
-#if 0
-// ----------------------------------------------------------------------
-// Setup test subject
-void
-spatialdata::spatialdb::TestSimpleDB::setUp(void)
-{ // setUp
- SimpleDB::DataStruct* pData = new SimpleDB::DataStruct;
- const int numLocs = _numLocs();
- const int spaceDim = _spaceDim();
- const int numVals = _numVals();
- const int dataDim = _dataDim();
-
- const int dataSize = numLocs*(spaceDim+numVals);
- CPPUNIT_ASSERT(0 < dataSize);
- pData->data = new double[dataSize];
- memcpy(pData->data, _data(), dataSize*sizeof(double));
-
- pData->valNames = new std::string[numVals];
- for (int i=0; i < numVals; ++i)
- pData->valNames[i] = _names()[i];
-
- pData->valUnits = new std::string[numVals];
- for (int i=0; i < numVals; ++i)
- pData->valUnits[i] = _units()[i];
-
- pData->numLocs = numLocs;
- pData->spaceDim = spaceDim;
- pData->numVals = numVals;
- pData->dataDim = _dataDim;
-
- _pDB = new SimpleDB;
- _pDB->_pData = pData;
- _pDB->_pQuery = new SimpleDBQuery(*_pDB);
- _pDB->_pCS = new spatialdata::geocoords::CSCart();
-} // setUp
-
-// ----------------------------------------------------------------------
-// Check query values.
-void
-spatialdata::spatialdb::TestSimpleDB::_checkQuery(const double* queryData,
- const int* queryErrFlags) const
-{ // _checkQuery
- CPPUNIT_ASSERT(0 != queryData);
- CPPUNIT_ASSERT(0 != _pDB);
-
- const int numVals = _numVals();
- const int spaceDim = _spaceDim();
-
- // reverse order of vals in queries
- const char* valNames[numVals];
- for (int i=0; i < numVals; ++i)
- valNames[numVals-i-1] = _names()[i];
- _pDB->queryVals(valNames, numVals);
-
- double* vals = (0 < numVals) ? new double[numVals] : 0;
- const double tolerance = 1.0e-06;
-
- const int numQueries = _numQueries();
- const int locSize = spaceDim+numVals;
- spatialdata::geocoords::CSCart csCart;
- for (int iQuery=0; iQuery < numQueries; ++iQuery) {
- const double* qCoords = &queryData[iQuery*locSize];
- const double* qVals = &queryData[iQuery*locSize+spaceDim];
- const int err = _pDB->query(vals, numVals, qCoords, spaceDim, &csCart);
- if (0 != queryErrFlags)
- CPPUNIT_ASSERT(err == queryErrFlags[iQuery]);
- else
- CPPUNIT_ASSERT(0 == err);
- for (int iVal=0; iVal < numVals; ++iVal)
- CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0, vals[iVal]/qVals[numVals-iVal-1],
- tolerance);
- } // for
- delete[] vals; vals = 0;
-} // CheckQuery
-#endif
-
-
// End of file
More information about the cig-commits
mailing list