diff --git a/cpputils.pri b/cpputils.pri new file mode 100644 index 0000000..6916033 --- /dev/null +++ b/cpputils.pri @@ -0,0 +1 @@ +INCLUDEPATH += $$PWD/src diff --git a/cpputils_src.pri b/cpputils_src.pri new file mode 100644 index 0000000..60be559 --- /dev/null +++ b/cpputils_src.pri @@ -0,0 +1,13 @@ +HEADERS += \ + $$PWD/src/cleanuphelper.h \ + $$PWD/src/cppflags.h \ + $$PWD/src/cppmacros.h \ + $$PWD/src/cppoverloadutils.h \ + $$PWD/src/cppsignal.h \ + $$PWD/src/cpptypesafeenum.h \ + $$PWD/src/cpputils.h \ + $$PWD/src/delayedconstruction.h \ + $$PWD/src/strutils.h + +SOURCES += \ + $$PWD/src/strutils.cpp diff --git a/test/cpputilstestutils.cpp b/test/cpputilstestutils.cpp new file mode 100644 index 0000000..586228f --- /dev/null +++ b/test/cpputilstestutils.cpp @@ -0,0 +1,9 @@ +#include "cpputilstestutils.h" + +namespace QTest { +template<> +char *toString(const std::string &str) +{ + return ::QTest::toString(QString::fromStdString(str)); +} +} // namespace QTest diff --git a/test/cpputilstestutils.h b/test/cpputilstestutils.h new file mode 100644 index 0000000..2a4299d --- /dev/null +++ b/test/cpputilstestutils.h @@ -0,0 +1,28 @@ +#pragma once + +#include +#include + +Q_DECLARE_METATYPE(std::string) + +// only needed if there is a nameclash between std::string *::toString(const T &) and template char *QTest::toString(const T &) +#define FIXEDCOMPARE(actual, expected) \ +do {\ + if (!fixedCompare(actual, expected, #actual, #expected, __FILE__, __LINE__))\ + return;\ +} while (false) + +namespace { +template +inline bool fixedCompare(T1 const &t1, T2 const &t2, const char *actual, const char *expected, + const char *file, int line) +{ + return QTest::compare_helper(t1 == t2, "Compared values are not the same", + ::QTest::toString(t1), ::QTest::toString(t2), actual, expected, file, line); +} +} + +namespace QTest { +template<> +char *toString(const std::string &str); +} // namespace QTest diff --git a/test/cpputilstestutils.pri b/test/cpputilstestutils.pri new file mode 100644 index 0000000..aba082d --- /dev/null +++ b/test/cpputilstestutils.pri @@ -0,0 +1 @@ +INCLUDEPATH += $$PWD diff --git a/test/cpputilstestutils_src.pri b/test/cpputilstestutils_src.pri new file mode 100644 index 0000000..cbaefe1 --- /dev/null +++ b/test/cpputilstestutils_src.pri @@ -0,0 +1,5 @@ +HEADERS += \ + $$PWD/cpputilstestutils.h + +SOURCES += \ + $$PWD/cpputilstestutils.cpp