summaryrefslogtreecommitdiffstats
path: root/tests/bttestui
diff options
context:
space:
mode:
authorAlex Blasche <alexander.blasche@digia.com>2014-08-13 17:07:07 +0200
committerAlex Blasche <alexander.blasche@digia.com>2014-08-13 17:07:15 +0200
commit81b3178cede7fad5360755a1186071548d139198 (patch)
treefd5ba8e786edaa969299be35996edc15d15cc3da /tests/bttestui
parentd5422ad7c9806e6a105ae9918fae650e38aad601 (diff)
parent687c885b8625374433f4ccc8b6442ea72ea62d46 (diff)
Merge remote-tracking branch 'gerrit/5.4' into btle
Diffstat (limited to 'tests/bttestui')
-rw-r--r--tests/bttestui/btlocaldevice.cpp26
-rw-r--r--tests/bttestui/btlocaldevice.h1
-rw-r--r--tests/bttestui/main.qml5
3 files changed, 32 insertions, 0 deletions
diff --git a/tests/bttestui/btlocaldevice.cpp b/tests/bttestui/btlocaldevice.cpp
index df23c859..6b7027d0 100644
--- a/tests/bttestui/btlocaldevice.cpp
+++ b/tests/bttestui/btlocaldevice.cpp
@@ -268,6 +268,8 @@ void BtLocalDevice::stopDiscovery()
void BtLocalDevice::startServiceDiscovery(bool isMinimalDiscovery)
{
if (serviceAgent) {
+ serviceAgent->setRemoteAddress(QBluetoothAddress());
+
qDebug() << "###### Starting service discovery process";
serviceAgent->start(isMinimalDiscovery
? QBluetoothServiceDiscoveryAgent::MinimalDiscovery
@@ -275,6 +277,24 @@ void BtLocalDevice::startServiceDiscovery(bool isMinimalDiscovery)
}
}
+void BtLocalDevice::startTargettedServiceDiscovery()
+{
+ if (serviceAgent) {
+ const QBluetoothAddress baddr(BTCHAT_DEVICE_ADDR);
+ qDebug() << "###### Starting service discovery on"
+ << baddr.toString();
+ if (baddr.isNull())
+ return;
+
+ if (!serviceAgent->setRemoteAddress(baddr)) {
+ qWarning() << "###### Cannot set remote address. Aborting";
+ return;
+ }
+
+ serviceAgent->start();
+ }
+}
+
void BtLocalDevice::stopServiceDiscovery()
{
if (serviceAgent) {
@@ -409,6 +429,12 @@ void BtLocalDevice::abortSocket()
qDebug() << "###### Disconnecting socket";
socket->abort();
}
+
+ if (!serverSockets.isEmpty()) {
+ qDebug() << "###### Closing server sockets";
+ foreach (QBluetoothSocket *s, serverSockets)
+ s->abort();
+ }
}
void BtLocalDevice::socketConnected()
diff --git a/tests/bttestui/btlocaldevice.h b/tests/bttestui/btlocaldevice.h
index a9571ecc..a0c020cc 100644
--- a/tests/bttestui/btlocaldevice.h
+++ b/tests/bttestui/btlocaldevice.h
@@ -87,6 +87,7 @@ public slots:
//QBluetoothServiceDiscoveryAgent
void startServiceDiscovery(bool isMinimalDiscovery);
+ void startTargettedServiceDiscovery();
void stopServiceDiscovery();
void serviceDiscovered(const QBluetoothServiceInfo &info);
void leServiceDiscovered(const QLowEnergyServiceInfo &leInfo);
diff --git a/tests/bttestui/main.qml b/tests/bttestui/main.qml
index d53aa4e1..93d943f2 100644
--- a/tests/bttestui/main.qml
+++ b/tests/bttestui/main.qml
@@ -168,6 +168,11 @@ Rectangle {
onClicked: device.startServiceDiscovery(false)
}
Button {
+ id: startRemoteSDiscBtn
+ buttonText: "StartRemSDisc"
+ onClicked: device.startTargettedServiceDiscovery()
+ }
+ Button {
buttonText: "StopSDisc"
onClicked: device.stopServiceDiscovery();
}