summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorAlex Blasche <alexander.blasche@digia.com>2014-08-22 09:56:56 +0200
committerAlex Blasche <alexander.blasche@digia.com>2014-09-02 20:18:09 +0200
commitbb4de7e992fc673884db553977b2756a165278b5 (patch)
tree0c0a9e56cc2f766ac13d76338bf64f3b52247222 /tests
parent6837d143b456eb1f253b68704a5ff1b48bef4de4 (diff)
Add a way to detect that the QLEController is performing a discovery
Change-Id: Ie3146c136461ad4ecde4169f3b30dda0c814ca7b Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/qlowenergycharacteristic/tst_qlowenergycharacteristic.cpp11
-rw-r--r--tests/auto/qlowenergycontroller/tst_qlowenergycontroller.cpp32
-rw-r--r--tests/auto/qlowenergydescriptor/tst_qlowenergydescriptor.cpp11
3 files changed, 54 insertions, 0 deletions
diff --git a/tests/auto/qlowenergycharacteristic/tst_qlowenergycharacteristic.cpp b/tests/auto/qlowenergycharacteristic/tst_qlowenergycharacteristic.cpp
index a313d1f6..23189f51 100644
--- a/tests/auto/qlowenergycharacteristic/tst_qlowenergycharacteristic.cpp
+++ b/tests/auto/qlowenergycharacteristic/tst_qlowenergycharacteristic.cpp
@@ -67,10 +67,14 @@ private:
QLowEnergyService *globalService;
};
+Q_DECLARE_METATYPE(QLowEnergyController::ControllerState)
+
tst_QLowEnergyCharacteristic::tst_QLowEnergyCharacteristic() :
globalControl(0), globalService(0)
{
QLoggingCategory::setFilterRules(QStringLiteral("qt.bluetooth* = true"));
+
+ qRegisterMetaType<QLowEnergyController::ControllerState>();
}
tst_QLowEnergyCharacteristic::~tst_QLowEnergyCharacteristic()
@@ -121,8 +125,15 @@ void tst_QLowEnergyCharacteristic::initTestCase()
}
QSignalSpy discoveryFinishedSpy(controller, SIGNAL(discoveryFinished()));
+ QSignalSpy stateSpy(controller, SIGNAL(stateChanged(QLowEnergyController::ControllerState)));
controller->discoverServices();
QTRY_VERIFY_WITH_TIMEOUT(discoveryFinishedSpy.count() == 1, 10000);
+ QCOMPARE(stateSpy.count(), 2);
+ QCOMPARE(stateSpy.at(0).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveringState);
+ QCOMPARE(stateSpy.at(1).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveredState);
+
foreach (const QBluetoothUuid &leServiceUuid, controller->services()) {
QLowEnergyService *leService = controller->createServiceObject(leServiceUuid, this);
if (!leService)
diff --git a/tests/auto/qlowenergycontroller/tst_qlowenergycontroller.cpp b/tests/auto/qlowenergycontroller/tst_qlowenergycontroller.cpp
index cb5bbb07..02f225ee 100644
--- a/tests/auto/qlowenergycontroller/tst_qlowenergycontroller.cpp
+++ b/tests/auto/qlowenergycontroller/tst_qlowenergycontroller.cpp
@@ -80,11 +80,13 @@ private:
Q_DECLARE_METATYPE(QLowEnergyCharacteristic)
Q_DECLARE_METATYPE(QLowEnergyDescriptor)
Q_DECLARE_METATYPE(QLowEnergyService::ServiceError)
+Q_DECLARE_METATYPE(QLowEnergyController::ControllerState)
tst_QLowEnergyController::tst_QLowEnergyController()
{
qRegisterMetaType<QLowEnergyCharacteristic>();
qRegisterMetaType<QLowEnergyDescriptor>();
+ qRegisterMetaType<QLowEnergyController::ControllerState>();
//QLoggingCategory::setFilterRules(QStringLiteral("qt.bluetooth* = true"));
const QString remote = qgetenv("BT_TEST_DEVICE");
@@ -203,8 +205,14 @@ void tst_QLowEnergyController::tst_connect()
if (!wasError) {
QSignalSpy discoveryFinishedSpy(&control, SIGNAL(discoveryFinished()));
QSignalSpy serviceFoundSpy(&control, SIGNAL(serviceDiscovered(QBluetoothUuid)));
+ QSignalSpy stateSpy(&control, SIGNAL(stateChanged(QLowEnergyController::ControllerState)));
control.discoverServices();
QTRY_VERIFY_WITH_TIMEOUT(discoveryFinishedSpy.count() == 1, 10000);
+ QCOMPARE(stateSpy.count(), 2);
+ QCOMPARE(stateSpy.at(0).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveringState);
+ QCOMPARE(stateSpy.at(1).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveredState);
QVERIFY(!serviceFoundSpy.isEmpty());
QVERIFY(serviceFoundSpy.count() >= foundServices.count());
@@ -332,8 +340,14 @@ void tst_QLowEnergyController::tst_concurrentDiscovery()
* */
QSignalSpy discoveryFinishedSpy(&control, SIGNAL(discoveryFinished()));
+ QSignalSpy stateSpy(&control, SIGNAL(stateChanged(QLowEnergyController::ControllerState)));
control.discoverServices();
QTRY_VERIFY_WITH_TIMEOUT(discoveryFinishedSpy.count() == 1, 10000);
+ QCOMPARE(stateSpy.count(), 2);
+ QCOMPARE(stateSpy.at(0).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveringState);
+ QCOMPARE(stateSpy.at(1).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveredState);
// pick MAX_SERVICES_SAME_TIME_ACCESS services
// and discover them at the same time
@@ -384,8 +398,14 @@ void tst_QLowEnergyController::tst_concurrentDiscovery()
}
QCOMPARE(control.state(), QLowEnergyController::ConnectedState);
+ stateSpy.clear();
control.discoverServices();
QTRY_VERIFY_WITH_TIMEOUT(discoveryFinishedSpy.count() == 1, 10000);
+ QCOMPARE(stateSpy.count(), 2);
+ QCOMPARE(stateSpy.at(0).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveringState);
+ QCOMPARE(stateSpy.at(1).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveredState);
// get all details
for (int i = 0; i<MAX_SERVICES_SAME_TIME_ACCESS; i++) {
@@ -1522,8 +1542,14 @@ void tst_QLowEnergyController::tst_writeCharacteristic()
QCOMPARE(control.state(), QLowEnergyController::ConnectedState);
QSignalSpy discoveryFinishedSpy(&control, SIGNAL(discoveryFinished()));
+ QSignalSpy stateSpy(&control, SIGNAL(stateChanged(QLowEnergyController::ControllerState)));
control.discoverServices();
QTRY_VERIFY_WITH_TIMEOUT(discoveryFinishedSpy.count() == 1, 10000);
+ QCOMPARE(stateSpy.count(), 2);
+ QCOMPARE(stateSpy.at(0).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveringState);
+ QCOMPARE(stateSpy.at(1).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveredState);
const QBluetoothUuid testService(QString("f000aa60-0451-4000-b000-000000000000"));
QList<QBluetoothUuid> uuids = control.services();
@@ -1663,8 +1689,14 @@ void tst_QLowEnergyController::tst_writeDescriptor()
QCOMPARE(control.state(), QLowEnergyController::ConnectedState);
QSignalSpy discoveryFinishedSpy(&control, SIGNAL(discoveryFinished()));
+ QSignalSpy stateSpy(&control, SIGNAL(stateChanged(QLowEnergyController::ControllerState)));
control.discoverServices();
QTRY_VERIFY_WITH_TIMEOUT(discoveryFinishedSpy.count() == 1, 10000);
+ QCOMPARE(stateSpy.count(), 2);
+ QCOMPARE(stateSpy.at(0).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveringState);
+ QCOMPARE(stateSpy.at(1).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveredState);
const QBluetoothUuid testService(QString("f000aa00-0451-4000-b000-000000000000"));
QList<QBluetoothUuid> uuids = control.services();
diff --git a/tests/auto/qlowenergydescriptor/tst_qlowenergydescriptor.cpp b/tests/auto/qlowenergydescriptor/tst_qlowenergydescriptor.cpp
index 3b22d2e3..e276b2ea 100644
--- a/tests/auto/qlowenergydescriptor/tst_qlowenergydescriptor.cpp
+++ b/tests/auto/qlowenergydescriptor/tst_qlowenergydescriptor.cpp
@@ -67,10 +67,14 @@ private:
QLowEnergyService *globalService;
};
+Q_DECLARE_METATYPE(QLowEnergyController::ControllerState)
+
tst_QLowEnergyDescriptor::tst_QLowEnergyDescriptor() :
globalControl(0), globalService(0)
{
QLoggingCategory::setFilterRules(QStringLiteral("qt.bluetooth* = true"));
+
+ qRegisterMetaType<QLowEnergyController::ControllerState>();
}
tst_QLowEnergyDescriptor::~tst_QLowEnergyDescriptor()
@@ -124,8 +128,15 @@ void tst_QLowEnergyDescriptor::initTestCase()
}
QSignalSpy discoveryFinishedSpy(controller, SIGNAL(discoveryFinished()));
+ QSignalSpy stateSpy(controller, SIGNAL(stateChanged(QLowEnergyController::ControllerState)));
controller->discoverServices();
QTRY_VERIFY_WITH_TIMEOUT(discoveryFinishedSpy.count() == 1, 10000);
+ QCOMPARE(stateSpy.count(), 2);
+ QCOMPARE(stateSpy.at(0).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveringState);
+ QCOMPARE(stateSpy.at(1).at(0).value<QLowEnergyController::ControllerState>(),
+ QLowEnergyController::DiscoveredState);
+
foreach (const QBluetoothUuid &leServiceUuid, controller->services()) {
QLowEnergyService *leService = controller->createServiceObject(leServiceUuid, this);
if (!leService)