summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/auto/corelib/kernel/qeventdispatcher/tst_qeventdispatcher.cpp17
-rw-r--r--tests/auto/gui/kernel/kernel.pro1
-rw-r--r--tests/auto/gui/kernel/qguieventdispatcher/qguieventdispatcher.pro4
3 files changed, 21 insertions, 1 deletions
diff --git a/tests/auto/corelib/kernel/qeventdispatcher/tst_qeventdispatcher.cpp b/tests/auto/corelib/kernel/qeventdispatcher/tst_qeventdispatcher.cpp
index 07bd73f0d7..d06912ee91 100644
--- a/tests/auto/corelib/kernel/qeventdispatcher/tst_qeventdispatcher.cpp
+++ b/tests/auto/corelib/kernel/qeventdispatcher/tst_qeventdispatcher.cpp
@@ -39,7 +39,11 @@
**
****************************************************************************/
-#include <QtCore/QCoreApplication>
+#ifdef QT_GUI_LIB
+# include <QtGui/QGuiApplication>
+#else
+# include <QtCore/QCoreApplication>
+#endif
#include <QtTest/QtTest>
enum {
@@ -68,6 +72,7 @@ public:
{ }
private slots:
+ void initTestCase();
void registerTimer();
/* void registerSocketNotifier(); */ // Not implemented here, see tst_QSocketNotifier instead
/* void registerEventNotifiier(); */ // Not implemented here, see tst_QWinEventNotifier instead
@@ -88,6 +93,16 @@ bool tst_QEventDispatcher::event(QEvent *e)
return QObject::event(e);
}
+// drain the system event queue after the test starts to avoid destabilizing the test functions
+void tst_QEventDispatcher::initTestCase()
+{
+ QElapsedTimer elapsedTimer;
+ elapsedTimer.start();
+ while (!elapsedTimer.hasExpired(CoarseTimerInterval) && eventDispatcher->processEvents(QEventLoop::AllEvents)) {
+ ;
+ }
+}
+
// test that the eventDispatcher's timer implementation is complete and working
void tst_QEventDispatcher::registerTimer()
{
diff --git a/tests/auto/gui/kernel/kernel.pro b/tests/auto/gui/kernel/kernel.pro
index 1adae128cf..116e9dd1f1 100644
--- a/tests/auto/gui/kernel/kernel.pro
+++ b/tests/auto/gui/kernel/kernel.pro
@@ -4,6 +4,7 @@ SUBDIRS=\
qdrag \
qevent \
qfileopenevent \
+ qguieventdispatcher \
qguimetatype \
qguivariant \
qinputmethod \
diff --git a/tests/auto/gui/kernel/qguieventdispatcher/qguieventdispatcher.pro b/tests/auto/gui/kernel/qguieventdispatcher/qguieventdispatcher.pro
new file mode 100644
index 0000000000..3057037e74
--- /dev/null
+++ b/tests/auto/gui/kernel/qguieventdispatcher/qguieventdispatcher.pro
@@ -0,0 +1,4 @@
+CONFIG += testcase
+TARGET = tst_qguieventdispatcher
+QT = core gui testlib
+SOURCES += ../../../corelib/kernel/qeventdispatcher/tst_qeventdispatcher.cpp