11 #include "eckit/exception/Exceptions.h"
12 #include "eckit/filesystem/PathName.h"
13 #include "eckit/log/Log.h"
14 #include "eckit/utils/StringTools.h"
15 #include "eckit/log/Timer.h"
21 using namespace eckit;
26 CompareTool::CompareTool (
int argc,
char *argv[])
36 throw Exception(
"Wrong number of parameters.");
44 s <<
"File " << p <<
" does not exist.";
45 throw Exception(s.str());
55 Timer t(std::string(
"Comparing files ") + *
file1_ +
" and " + *
file2_);
64 std::vector<std::string> excludedColumnsTypes = StringTools::split(
",",
optionArgument(
"-excludeColumnsTypes", std::string(
"")));
65 std::vector<std::string> excludedColumns = StringTools::split(
",",
optionArgument(
"-excludeColumns", std::string(
"")));
67 if (excludedColumnsTypes.size()) {
68 Log::info() <<
"excludedColumnsTypes:" << excludedColumnsTypes << std::endl;
71 if (excludedColumns.size()) {
72 Log::info() <<
"excludedColumns:" << excludedColumns << std::endl;
75 bool checkMissing = !
optionIsSet(
"-dontCheckMissing");
bool compare(T1 &it1, const T1 &end1, T2 &it2, const T2 &end2, const std::string &desc1, const std::string &desc2)
const iterator end() const