summaryrefslogtreecommitdiffstats
path: root/tests/auto/qbluetoothserviceinfo/tst_qbluetoothserviceinfo.cpp
diff options
context:
space:
mode:
authorAlex Blasche <alexander.blasche@digia.com>2014-02-06 13:03:58 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-02-07 08:40:16 +0100
commit477d9f450a1e9767dbf10f4c040e994231674a1f (patch)
tree2f475fd94d9f5e4e20bf79c5296c0f3fc492fd8d /tests/auto/qbluetoothserviceinfo/tst_qbluetoothserviceinfo.cpp
parent7d4f4c3083d565af00f1564ae80e5cbfbc338bd5 (diff)
Fix broken QBluetoothServiceInfo::serviceClassUuids() call
It never returned a valid entry due to wrong QVariant conversion. The patch changes the public header with a potential to break BC. A formerly inline function was reimplemented and is no longer inline. This should be safe though as older header versions can still use the previous implementation. Change-Id: If786a366e625a56810b8d4cc682b25d07f72f4e5 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Diffstat (limited to 'tests/auto/qbluetoothserviceinfo/tst_qbluetoothserviceinfo.cpp')
-rw-r--r--tests/auto/qbluetoothserviceinfo/tst_qbluetoothserviceinfo.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/auto/qbluetoothserviceinfo/tst_qbluetoothserviceinfo.cpp b/tests/auto/qbluetoothserviceinfo/tst_qbluetoothserviceinfo.cpp
index 62550622..2195bc0e 100644
--- a/tests/auto/qbluetoothserviceinfo/tst_qbluetoothserviceinfo.cpp
+++ b/tests/auto/qbluetoothserviceinfo/tst_qbluetoothserviceinfo.cpp
@@ -71,6 +71,8 @@ private slots:
void tst_assignment_data();
void tst_assignment();
+
+ void tst_serviceClassUuids();
};
tst_QBluetoothServiceInfo::tst_QBluetoothServiceInfo()
@@ -329,6 +331,27 @@ void tst_QBluetoothServiceInfo::tst_assignment()
}
}
+void tst_QBluetoothServiceInfo::tst_serviceClassUuids()
+{
+ QBluetoothServiceInfo info;
+ QCOMPARE(info.serviceClassUuids().count(), 0);
+
+ QBluetoothServiceInfo::Sequence classIds;
+ classIds << QVariant::fromValue(QBluetoothUuid(QBluetoothUuid::SerialPort));
+ QCOMPARE(classIds.count(), 1);
+
+ QBluetoothUuid uuid(QString("e8e10f95-1a70-4b27-9ccf-02010264e9c8"));
+ classIds.prepend(QVariant::fromValue(uuid));
+ QCOMPARE(classIds.count(), 2);
+ QCOMPARE(classIds.at(0).value<QBluetoothUuid>(), uuid);
+
+ info.setAttribute(QBluetoothServiceInfo::ServiceClassIds, classIds);
+ QList<QBluetoothUuid> svclids = info.serviceClassUuids();
+ QCOMPARE(svclids.count(), 2);
+ QCOMPARE(svclids.at(0), uuid);
+ QCOMPARE(svclids.at(1), QBluetoothUuid(QBluetoothUuid::SerialPort));
+}
+
QTEST_MAIN(tst_QBluetoothServiceInfo)
#include "tst_qbluetoothserviceinfo.moc"