geom/src/XAO/tests/TestUtils.hxx

39 lines
1.1 KiB
C++
Raw Normal View History

#ifndef __XAO_TESTUTILS_HXX__
#define __XAO_TESTUTILS_HXX__
#include <fstream>
#include <cstdlib>
namespace XAO
{
class TestUtils
{
public:
static std::string getTestFilePath(const std::string& fileName)
{
std::string dataDir = getenv("GEOM_SRC_DIR");
2013-10-17 07:24:33 +00:00
dataDir += "/src/XAO/tests/data/";
dataDir += fileName;
return dataDir;
}
static char* readTextFile(const std::string& filePath)
{
std::ifstream rstr;
int length;
rstr.open(filePath.c_str());
rstr.seekg(0, rstr.end); // go to the end
length = rstr.tellg(); // report location (this is the length)
rstr.seekg(0, rstr.beg); // go back to the beginning
2013-12-18 14:23:59 +00:00
char* txt = new char[length+1]; // allocate memory for a buffer of appropriate dimension
rstr.read(txt, length); // read the whole file into the buffer
2013-12-18 14:23:59 +00:00
txt[length] = '\0';
rstr.close();
return txt;
}
};
}
#endif /* __XAO_TESTUTILS_HXX__ */