summaryrefslogtreecommitdiffstats
path: root/tests/auto/declarative/qdeclarativedebug
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@nokia.com>2010-09-22 19:03:57 (GMT)
committerKai Koehne <kai.koehne@nokia.com>2010-09-28 05:55:32 (GMT)
commitfd9771c29d401d88779ab7c5d7715c9ca41dd723 (patch)
tree0e96e0871e8914f5747bfc1a1314d76a78620b6d /tests/auto/declarative/qdeclarativedebug
parent7b796b4dcdebfba55c4754d241edb334217fc550 (diff)
downloadQt-fd9771c29d401d88779ab7c5d7715c9ca41dd723.zip
Qt-fd9771c29d401d88779ab7c5d7715c9ca41dd723.tar.gz
Qt-fd9771c29d401d88779ab7c5d7715c9ca41dd723.tar.bz2
Make QmlDebug protocol more robust
The protocol so far was client->server only. That is, there was no sane way for a client to check whether a plugin on the server (service) was available or not. E.g. calling Client::setEnabled(true) 'succeeded', without a check whether there is actually a service to talk to. The new protocol replaces this shortcoming by a service discovery mechanism: Both client & service announce their available plugins at handshake time, and later on if there are changes. The status is reflected in Client::status() and Service::Status() , which are either NotConnected - no network connection, or not registered properly Unavailable - TCP/IP connection works, but no plugin with the same name on the other side Enabled - You can connect to plugin on other side The status changes happen automatically (no setEnabled() anymore). Furthermore a version ID was added to the handshake, so that we can extend the protocol further in the future :)
Diffstat (limited to 'tests/auto/declarative/qdeclarativedebug')
-rw-r--r--tests/auto/declarative/qdeclarativedebug/tst_qdeclarativedebug.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/tests/auto/declarative/qdeclarativedebug/tst_qdeclarativedebug.cpp b/tests/auto/declarative/qdeclarativedebug/tst_qdeclarativedebug.cpp
index adba190..dd58baf 100644
--- a/tests/auto/declarative/qdeclarativedebug/tst_qdeclarativedebug.cpp
+++ b/tests/auto/declarative/qdeclarativedebug/tst_qdeclarativedebug.cpp
@@ -324,13 +324,16 @@ void tst_QDeclarativeDebug::initTestCase()
bool ok = m_conn->waitForConnected();
Q_ASSERT(ok);
QTRY_VERIFY(QDeclarativeDebugService::hasDebuggingClient());
-
m_dbg = new QDeclarativeEngineDebug(m_conn, this);
+ QTRY_VERIFY(m_dbg->status() == QDeclarativeEngineDebug::Enabled);
}
void tst_QDeclarativeDebug::cleanupTestCase()
{
+ delete m_dbg;
+ delete m_conn;
qDeleteAll(m_components);
+ delete m_engine;
}
void tst_QDeclarativeDebug::setMethodBody()