TEUCHOS_UNIT_TEST(Teuchos_TwoDArray, symmetryTest){ TwoDArray<int> simpleArray = getSimpleTestTwoDArray(); TEST_ASSERT(!simpleArray.isSymmetrical()); simpleArray.setSymmetrical(true); TEST_ASSERT(simpleArray.isSymmetrical()); }
TEUCHOS_UNIT_TEST(Teuchos_TwoDArray, symmetrySerialization){ TwoDArray<int> simpleArray = getSimpleTestTwoDArray(); simpleArray.setSymmetrical(true); std::string arrayString = TwoDArray<int>::toString(simpleArray); TwoDArray<int> readIn = TwoDArray<int>::fromString(arrayString); TEST_ASSERT(readIn.isSymmetrical()); }
std::string TwoDArray<T>::toString(const TwoDArray<T> array){ std::stringstream numColsStream; std::stringstream numRowsStream; numColsStream << array.getNumCols(); numRowsStream << array.getNumRows(); std::string metaSeperator = TwoDArray<T>::getMetaSeperator(); return numRowsStream.str() + TwoDArray<T>::getDimensionsDelimiter() + numColsStream.str() + metaSeperator + (array.isSymmetrical() ? "sym"+metaSeperator : "") + array.getDataArray().toString(); }