summaryrefslogtreecommitdiffstats
path: root/src/testlib
diff options
context:
space:
mode:
Diffstat (limited to 'src/testlib')
-rw-r--r--src/testlib/configure.json22
-rw-r--r--src/testlib/qabstractitemmodeltester.h4
-rw-r--r--src/testlib/qbenchmark.h2
-rw-r--r--src/testlib/qbenchmark_p.h2
-rw-r--r--src/testlib/qbenchmarkmetric.h2
-rw-r--r--src/testlib/qbenchmarkmetric_p.h2
-rw-r--r--src/testlib/qtest.h2
-rw-r--r--src/testlib/qtestaccessible.h2
-rw-r--r--src/testlib/qtestblacklist_p.h2
-rw-r--r--src/testlib/qtestcase.cpp24
-rw-r--r--src/testlib/qtestcase.h2
-rw-r--r--src/testlib/qtestdata.h2
-rw-r--r--src/testlib/qtestevent.h19
-rw-r--r--src/testlib/qtesteventloop.h2
-rw-r--r--src/testlib/qtestkeyboard.h2
-rw-r--r--src/testlib/qtestlog_p.h2
-rw-r--r--src/testlib/qtestmouse.cpp2
-rw-r--r--src/testlib/qtestmouse.h2
-rw-r--r--src/testlib/qtestresult_p.h2
-rw-r--r--src/testlib/qtesttable_p.h2
-rw-r--r--src/testlib/qtesttouch.h2
-rw-r--r--src/testlib/qttestglobal.h (renamed from src/testlib/qtest_global.h)6
-rw-r--r--src/testlib/testlib.pro12
23 files changed, 88 insertions, 33 deletions
diff --git a/src/testlib/configure.json b/src/testlib/configure.json
new file mode 100644
index 0000000000..c464037205
--- /dev/null
+++ b/src/testlib/configure.json
@@ -0,0 +1,22 @@
+{
+ "module": "testlib",
+ "depends": [
+ "core"
+ ],
+
+ "features": {
+ "itemmodeltester": {
+ "label": "Tester for item models",
+ "purpose": "Provides a utility to test item models.",
+ "condition": "features.itemmodel",
+ "output": [ "publicFeature" ]
+ }
+ },
+
+ "summary": [
+ {
+ "section": "Qt Testlib",
+ "entries": [ "itemmodeltester" ]
+ }
+ ]
+}
diff --git a/src/testlib/qabstractitemmodeltester.h b/src/testlib/qabstractitemmodeltester.h
index 617e189817..706c0ac16f 100644
--- a/src/testlib/qabstractitemmodeltester.h
+++ b/src/testlib/qabstractitemmodeltester.h
@@ -30,7 +30,7 @@
#define QABSTRACTITEMMODELTESTER_H
#include <QtCore/QObject>
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#ifdef QT_GUI_LIB
#include <QtGui/QFont>
@@ -41,6 +41,8 @@
#include <QtGui/QIcon>
#endif
+QT_REQUIRE_CONFIG(itemmodeltester);
+
QT_BEGIN_NAMESPACE
class QAbstractItemModel;
diff --git a/src/testlib/qbenchmark.h b/src/testlib/qbenchmark.h
index 1340fd7715..4a55fcc23e 100644
--- a/src/testlib/qbenchmark.h
+++ b/src/testlib/qbenchmark.h
@@ -40,7 +40,7 @@
#ifndef QBENCHMARK_H
#define QBENCHMARK_H
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#include <QtTest/qbenchmarkmetric.h>
QT_BEGIN_NAMESPACE
diff --git a/src/testlib/qbenchmark_p.h b/src/testlib/qbenchmark_p.h
index dbfa0127b6..3fa9c5f534 100644
--- a/src/testlib/qbenchmark_p.h
+++ b/src/testlib/qbenchmark_p.h
@@ -69,7 +69,7 @@
#include <QtTest/private/qbenchmarkmeasurement_p.h>
#include <QtCore/QMap>
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#ifdef QTESTLIB_USE_VALGRIND
#include <QtTest/private/qbenchmarkvalgrind_p.h>
#endif
diff --git a/src/testlib/qbenchmarkmetric.h b/src/testlib/qbenchmarkmetric.h
index 6e423473b1..6605606402 100644
--- a/src/testlib/qbenchmarkmetric.h
+++ b/src/testlib/qbenchmarkmetric.h
@@ -41,7 +41,7 @@
#ifndef QBENCHMARKMETRIC_H
#define QBENCHMARKMETRIC_H
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
QT_BEGIN_NAMESPACE
diff --git a/src/testlib/qbenchmarkmetric_p.h b/src/testlib/qbenchmarkmetric_p.h
index a036c645bf..049b9711e2 100644
--- a/src/testlib/qbenchmarkmetric_p.h
+++ b/src/testlib/qbenchmarkmetric_p.h
@@ -51,7 +51,7 @@
// We mean it.
//
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#include <QtTest/qbenchmarkmetric.h>
QT_BEGIN_NAMESPACE
diff --git a/src/testlib/qtest.h b/src/testlib/qtest.h
index a5df27e3b9..1cb6a91d33 100644
--- a/src/testlib/qtest.h
+++ b/src/testlib/qtest.h
@@ -41,7 +41,7 @@
#ifndef QTEST_H
#define QTEST_H
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#include <QtTest/qtestcase.h>
#include <QtTest/qtestdata.h>
#include <QtTest/qbenchmark.h>
diff --git a/src/testlib/qtestaccessible.h b/src/testlib/qtestaccessible.h
index 0470d15ed7..d14dcec031 100644
--- a/src/testlib/qtestaccessible.h
+++ b/src/testlib/qtestaccessible.h
@@ -54,7 +54,7 @@
#include <QtCore/qdebug.h>
#include <QtGui/qaccessible.h>
#include <QtGui/qguiapplication.h>
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#include <QtTest/qtestsystem.h>
#if QT_CONFIG(accessibility)
diff --git a/src/testlib/qtestblacklist_p.h b/src/testlib/qtestblacklist_p.h
index df205fc77b..08ce052231 100644
--- a/src/testlib/qtestblacklist_p.h
+++ b/src/testlib/qtestblacklist_p.h
@@ -51,7 +51,7 @@
// We mean it.
//
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
QT_BEGIN_NAMESPACE
diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp
index 24d6d9d6b9..0866176b6b 100644
--- a/src/testlib/qtestcase.cpp
+++ b/src/testlib/qtestcase.cpp
@@ -75,6 +75,7 @@
#include <QtTest/private/qtestutil_macos_p.h>
#endif
+#include <cmath>
#include <numeric>
#include <algorithm>
@@ -208,8 +209,13 @@ static void stackTrace()
if (debuggerPresent())
return;
+#if defined(Q_OS_LINUX) || defined(Q_OS_MACOS)
+ const int msecsFunctionTime = qRound(QTestLog::msecsFunctionTime());
+ const int msecsTotalTime = qRound(QTestLog::msecsTotalTime());
+ fprintf(stderr, "\n=== Received signal at function time: %dms, total time: %dms, dumping stack ===\n",
+ msecsFunctionTime, msecsTotalTime);
+#endif
#ifdef Q_OS_LINUX
- fprintf(stderr, "\n========= Received signal, dumping stack ==============\n");
char cmd[512];
qsnprintf(cmd, 512, "gdb --pid %d 2>/dev/null <<EOF\n"
"set prompt\n"
@@ -221,9 +227,8 @@ static void stackTrace()
(int)getpid());
if (system(cmd) == -1)
fprintf(stderr, "calling gdb failed\n");
- fprintf(stderr, "========= End of stack trace ==============\n");
+ fprintf(stderr, "=== End of stack trace ===\n");
#elif defined(Q_OS_OSX)
- fprintf(stderr, "\n========= Received signal, dumping stack ==============\n");
char cmd[512];
qsnprintf(cmd, 512, "lldb -p %d 2>/dev/null <<EOF\n"
"bt all\n"
@@ -232,7 +237,7 @@ static void stackTrace()
(int)getpid());
if (system(cmd) == -1)
fprintf(stderr, "calling lldb failed\n");
- fprintf(stderr, "========= End of stack trace ==============\n");
+ fprintf(stderr, "=== End of stack trace ===\n");
#endif
}
@@ -2445,7 +2450,16 @@ bool QTest::qCompare(float const &t1, float const &t2, const char *actual, const
bool QTest::qCompare(double const &t1, double const &t2, const char *actual, const char *expected,
const char *file, int line)
{
- return compare_helper(qFuzzyCompare(t1, t2), "Compared doubles are not the same (fuzzy compare)",
+ bool equal = false;
+ int cl1 = std::fpclassify(t1);
+ int cl2 = std::fpclassify(t2);
+ if (cl1 == FP_INFINITE)
+ equal = ((t1 < 0) == (t2 < 0)) && cl2 == FP_INFINITE;
+ else if (cl1 == FP_NAN)
+ equal = (cl2 == FP_NAN);
+ else
+ equal = qFuzzyCompare(t1, t2);
+ return compare_helper(equal, "Compared doubles are not the same (fuzzy compare)",
toString(t1), toString(t2), actual, expected, file, line);
}
diff --git a/src/testlib/qtestcase.h b/src/testlib/qtestcase.h
index c9d51817f3..4bf816a850 100644
--- a/src/testlib/qtestcase.h
+++ b/src/testlib/qtestcase.h
@@ -40,7 +40,7 @@
#ifndef QTESTCASE_H
#define QTESTCASE_H
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#include <QtCore/qstring.h>
#include <QtCore/qnamespace.h>
diff --git a/src/testlib/qtestdata.h b/src/testlib/qtestdata.h
index c87236fcfc..cf10fed8f3 100644
--- a/src/testlib/qtestdata.h
+++ b/src/testlib/qtestdata.h
@@ -40,7 +40,7 @@
#ifndef QTESTDATA_H
#define QTESTDATA_H
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#include <QtCore/qmetatype.h>
#include <QtCore/qstring.h>
diff --git a/src/testlib/qtestevent.h b/src/testlib/qtestevent.h
index 159e3e01ff..faad914a47 100644
--- a/src/testlib/qtestevent.h
+++ b/src/testlib/qtestevent.h
@@ -45,7 +45,7 @@
#pragma qt_no_master_include
#endif
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#ifdef QT_GUI_LIB
#include <QtTest/qtestkeyboard.h>
#include <QtTest/qtestmouse.h>
@@ -103,7 +103,10 @@ class QTestKeyClicksEvent: public QTestEvent
{
public:
inline QTestKeyClicksEvent(const QString &keys, Qt::KeyboardModifiers modifiers, int delay)
- : _keys(keys), _modifiers(modifiers), _delay(delay) {}
+ : _keys(keys), _modifiers(modifiers), _delay(delay)
+ {
+ Q_UNUSED(_delay) // Silence -Werror,-Wunused-private-field
+ }
inline QTestEvent *clone() const override { return new QTestKeyClicksEvent(*this); }
#ifdef QT_WIDGETS_LIB
@@ -124,7 +127,12 @@ class QTestMouseEvent: public QTestEvent
public:
inline QTestMouseEvent(QTest::MouseAction action, Qt::MouseButton button,
Qt::KeyboardModifiers modifiers, QPoint position, int delay)
- : _action(action), _button(button), _modifiers(modifiers), _pos(position), _delay(delay) {}
+ : _action(action), _button(button), _modifiers(modifiers), _pos(position), _delay(delay)
+ {
+ Q_UNUSED(_action)
+ Q_UNUSED(_button)
+ Q_UNUSED(_delay)
+ }
inline QTestEvent *clone() const override { return new QTestMouseEvent(*this); }
#ifdef QT_WIDGETS_LIB
@@ -147,7 +155,10 @@ private:
class QTestDelayEvent: public QTestEvent
{
public:
- inline QTestDelayEvent(int msecs): _delay(msecs) {}
+ inline QTestDelayEvent(int msecs): _delay(msecs)
+ {
+ Q_UNUSED(_delay)
+ }
inline QTestEvent *clone() const override { return new QTestDelayEvent(*this); }
#ifdef QT_WIDGETS_LIB
diff --git a/src/testlib/qtesteventloop.h b/src/testlib/qtesteventloop.h
index 81c0b9126c..19ad22565e 100644
--- a/src/testlib/qtesteventloop.h
+++ b/src/testlib/qtesteventloop.h
@@ -40,7 +40,7 @@
#ifndef QTESTEVENTLOOP_H
#define QTESTEVENTLOOP_H
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#include <QtCore/qcoreapplication.h>
#include <QtCore/qeventloop.h>
diff --git a/src/testlib/qtestkeyboard.h b/src/testlib/qtestkeyboard.h
index a7cf78f25a..63501ffb1e 100644
--- a/src/testlib/qtestkeyboard.h
+++ b/src/testlib/qtestkeyboard.h
@@ -46,7 +46,7 @@
#endif
#include <QtTest/qtestassert.h>
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#include <QtTest/qtestsystem.h>
#include <QtTest/qtestspontaneevent.h>
diff --git a/src/testlib/qtestlog_p.h b/src/testlib/qtestlog_p.h
index da16a3d539..600c078ce2 100644
--- a/src/testlib/qtestlog_p.h
+++ b/src/testlib/qtestlog_p.h
@@ -51,7 +51,7 @@
// We mean it.
//
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
QT_BEGIN_NAMESPACE
diff --git a/src/testlib/qtestmouse.cpp b/src/testlib/qtestmouse.cpp
index eda7edbd89..76369e0490 100644
--- a/src/testlib/qtestmouse.cpp
+++ b/src/testlib/qtestmouse.cpp
@@ -39,7 +39,7 @@
#include <QtCore/QtGlobal>
#include <QtCore/qnamespace.h>
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
QT_BEGIN_NAMESPACE
diff --git a/src/testlib/qtestmouse.h b/src/testlib/qtestmouse.h
index e2835828a1..e3e446577d 100644
--- a/src/testlib/qtestmouse.h
+++ b/src/testlib/qtestmouse.h
@@ -45,7 +45,7 @@
#pragma qt_no_master_include
#endif
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#include <QtTest/qtestassert.h>
#include <QtTest/qtestsystem.h>
#include <QtTest/qtestspontaneevent.h>
diff --git a/src/testlib/qtestresult_p.h b/src/testlib/qtestresult_p.h
index 061ca5f311..4df75b2805 100644
--- a/src/testlib/qtestresult_p.h
+++ b/src/testlib/qtestresult_p.h
@@ -51,7 +51,7 @@
// We mean it.
//
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
QT_BEGIN_NAMESPACE
diff --git a/src/testlib/qtesttable_p.h b/src/testlib/qtesttable_p.h
index 53de9a2f43..d2f389a134 100644
--- a/src/testlib/qtesttable_p.h
+++ b/src/testlib/qtesttable_p.h
@@ -51,7 +51,7 @@
// We mean it.
//
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
QT_BEGIN_NAMESPACE
diff --git a/src/testlib/qtesttouch.h b/src/testlib/qtesttouch.h
index 83ca83602e..20a9476ee7 100644
--- a/src/testlib/qtesttouch.h
+++ b/src/testlib/qtesttouch.h
@@ -45,7 +45,7 @@
#pragma qt_no_master_include
#endif
-#include <QtTest/qtest_global.h>
+#include <QtTest/qttestglobal.h>
#include <QtTest/qtestassert.h>
#include <QtTest/qtestsystem.h>
#include <QtTest/qtestspontaneevent.h>
diff --git a/src/testlib/qtest_global.h b/src/testlib/qttestglobal.h
index 3fbb1d428c..9561e56ba3 100644
--- a/src/testlib/qtest_global.h
+++ b/src/testlib/qttestglobal.h
@@ -37,14 +37,14 @@
**
****************************************************************************/
-#ifndef QTEST_GLOBAL_H
-#define QTEST_GLOBAL_H
+#ifndef QTTESTGLOBAL_H
+#define QTTESTGLOBAL_H
#include <QtCore/qglobal.h>
+#include <QtTest/qttestlib-config.h>
QT_BEGIN_NAMESPACE
-
#if defined(QT_STATIC)
# define Q_TESTLIB_EXPORT
#else
diff --git a/src/testlib/testlib.pro b/src/testlib/testlib.pro
index c13b851e03..46b61dac07 100644
--- a/src/testlib/testlib.pro
+++ b/src/testlib/testlib.pro
@@ -12,7 +12,6 @@ unix:!embedded:QMAKE_PKGCONFIG_DESCRIPTION = Qt \
QMAKE_DOCS = $$PWD/doc/qttestlib.qdocconf
HEADERS = \
- qabstractitemmodeltester.h \
qbenchmark.h \
qbenchmark_p.h \
qbenchmarkmeasurement_p.h \
@@ -29,7 +28,6 @@ HEADERS = \
qtestdata.h \
qtestevent.h \
qtesteventloop.h \
- qtest_global.h \
qtest_gui.h \
qtest_network.h \
qtest_widgets.h \
@@ -41,10 +39,10 @@ HEADERS = \
qtesttouch.h \
qtestblacklist_p.h \
qtesthelpers_p.h \
+ qttestglobal.h \
qtaptestlogger_p.h
SOURCES = \
- qabstractitemmodeltester.cpp \
qtestcase.cpp \
qtestlog.cpp \
qtesttable.cpp \
@@ -71,6 +69,14 @@ SOURCES = \
qtestblacklist.cpp \
qtaptestlogger.cpp
+qtConfig(itemmodeltester) {
+ HEADERS += \
+ qabstractitemmodeltester.h
+
+ SOURCES += \
+ qabstractitemmodeltester.cpp
+}
+
DEFINES *= QT_NO_CAST_TO_ASCII \
QT_NO_CAST_FROM_ASCII \
QT_NO_FOREACH \