summaryrefslogtreecommitdiffstats
path: root/src/testlib
diff options
context:
space:
mode:
authorKent Hansen <kent.hansen@nokia.com>2012-05-31 21:49:07 +0200
committerQt by Nokia <qt-info@nokia.com>2012-06-04 01:18:52 +0200
commitff505197689062264bf2abc0661d03d371e997df (patch)
treec3c0caecf86858c8de92f51ae92895f7c4efbb07 /src/testlib
parent09163941268745bbe231d0b2c25697940aa40127 (diff)
Change testlib signal dumper hooks to use signal index range
Another step towards getting rid of the class method offset computation in QMetaObject::activate(). Since QMetaObjectPrivate::signal() is private API, this also required adding a testlib dependency on core-private (and getting rid of the duplicated QSignalSpyCallbackSet struct). Change-Id: I0d830f35392a6b44fc321c5285877ec0bf437100 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Diffstat (limited to 'src/testlib')
-rw-r--r--src/testlib/qsignaldumper.cpp21
-rw-r--r--src/testlib/testlib.pro2
2 files changed, 6 insertions, 17 deletions
diff --git a/src/testlib/qsignaldumper.cpp b/src/testlib/qsignaldumper.cpp
index 2da4174e3a..53c70f3101 100644
--- a/src/testlib/qsignaldumper.cpp
+++ b/src/testlib/qsignaldumper.cpp
@@ -49,6 +49,8 @@
#include <QtTest/private/qtestlog_p.h>
+#include <QtCore/private/qmetaobject_p.h>
+
QT_BEGIN_NAMESPACE
namespace QTest
@@ -64,12 +66,12 @@ static int iLevel = 0;
static int ignoreLevel = 0;
enum { IndentSpacesCount = 4 };
-static void qSignalDumperCallback(QObject *caller, int method_index, void **argv)
+static void qSignalDumperCallback(QObject *caller, int signal_index, void **argv)
{
Q_ASSERT(caller); Q_ASSERT(argv); Q_UNUSED(argv);
const QMetaObject *mo = caller->metaObject();
Q_ASSERT(mo);
- QMetaMethod member = mo->method(method_index);
+ QMetaMethod member = QMetaObjectPrivate::signal(mo, signal_index);
Q_ASSERT(member.isValid());
if (QTest::ignoreClasses() && QTest::ignoreClasses()->contains(mo->className())) {
@@ -151,7 +153,7 @@ static void qSignalDumperCallbackSlot(QObject *caller, int method_index, void **
qPrintMessage(str);
}
-static void qSignalDumperCallbackEndSignal(QObject *caller, int /*method_index*/)
+static void qSignalDumperCallbackEndSignal(QObject *caller, int /*signal_index*/)
{
Q_ASSERT(caller); Q_ASSERT(caller->metaObject());
if (QTest::ignoreClasses()
@@ -166,19 +168,6 @@ static void qSignalDumperCallbackEndSignal(QObject *caller, int /*method_index*/
}
-// this struct is copied from qobject_p.h to prevent us
-// from including private Qt headers.
-struct QSignalSpyCallbackSet
-{
- typedef void (*BeginCallback)(QObject *caller, int method_index, void **argv);
- typedef void (*EndCallback)(QObject *caller, int method_index);
- BeginCallback signal_begin_callback,
- slot_begin_callback;
- EndCallback signal_end_callback,
- slot_end_callback;
-};
-extern void Q_CORE_EXPORT qt_register_signal_spy_callbacks(const QSignalSpyCallbackSet &);
-
void QSignalDumper::startDump()
{
static QSignalSpyCallbackSet set = { QTest::qSignalDumperCallback,
diff --git a/src/testlib/testlib.pro b/src/testlib/testlib.pro
index 142a854693..1a76a3b556 100644
--- a/src/testlib/testlib.pro
+++ b/src/testlib/testlib.pro
@@ -2,7 +2,7 @@ load(qt_module)
TARGET = QtTest
QPRO_PWD = $$PWD
-QT = core
+QT = core-private
CONFIG += module exceptions
MODULE_PRI = ../modules/qt_testlib.pri