summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Bluetooth LE: Add support for Signed Write command in the central role.Christian Kandeler2016-02-172-6/+52
| | | | | | Task-number: QTBUG-41175 Change-Id: I62d74236faf9161681306d952e409e23e0cea24d Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* Fix undefined behavior in AddressInfo's default ctor.Alex Blasche2016-02-111-0/+5
| | | | | | | The AddressInfo::type member was not properly initialised. Change-Id: I79c8e1d00d4cb03e3d073a23bb4dbf6b9d510b7c Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
* Bluetooth LE: Fix two list setter functions.Christian Kandeler2016-02-091-0/+8
| | | | | | | | Adding the new list elements is all well and nice, but we have to clear the existing ones first. Change-Id: I1b044f2ea86a4a300bde93535a944c18328aa805 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* Bluetooth LE: Add configure test for Linux crypto API.Christian Kandeler2016-02-092-2/+4
| | | | | | | These files were forgotten in commit c516f6157a. Change-Id: I87bd57545b8873fc0aa00751058be604588daffe Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* Bluetooth LE: Add support for Signed Write command.Christian Kandeler2016-02-033-2/+47
| | | | | | | | | | | | | | | | | - This is how we get at the signature resolving key: 1) On connection from a client, we read the key from the respective BlueZ settings file (BlueZ 5 only, as I did not manage to find out where BlueZ 4 keeps this information). 2) Also monitor the HCI traffic for key updates (due to re-pairing). - While there is an autotest for the actual hashing procedure, the overall feature cannot be easily tested for various reasons (there is no signed write support in our client API, for one). However, to help with manual testing, the server part of our autotest now exposes a characteristic that supports signed writes. - This feature requires a Linux kernel >= 3.7. Change-Id: I7ede9b430de167fe1f4519eedf8670d88d79aa25 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* Update to new Qt license headersneardAlex Blasche2016-01-262-34/+24
| | | | | Change-Id: I2c799dbac99c66d5e87fd92efc215e121064cfde Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
* Merge remote-tracking branch 'gerrit/dev' into neardAlex Blasche2016-01-2627-461/+326
|\ | | | | | | Change-Id: If9cf6718cbd619dd7ce38db2da274fe9d0a41fb7
| * Updated license headersAntti Kokko2016-01-2027-461/+326
| | | | | | | | | | | | | | | | | | | | | | From Qt 5.7 -> tools & applications are lisenced under GPL v3 with some exceptions, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new GPL-EXCEPT header instead of LGPL21 one (in those files which will be under GPL 3 with exceptions) Change-Id: I37338c968d8cb5a056cd42e1130cfa077b12d164 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Bluetooth LE: Add connection update functionality.Christian Kandeler2016-01-182-0/+33
| | | | | | | | | | | | | | Implemented for BlueZ only. Change-Id: I358a98bbc7499d5ce5437fb0d4672fde46c3b831 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Merge remote-tracking branch 'gerrit/dev' into neardAlex Blasche2016-01-051-3/+3
|\| | | | | | | | | | | | | Conflicts: src/bluetooth/qlowenergycontroller.cpp Change-Id: I28b116deb3fa87169432eb2d94b70894359a9057
| * tvOS supportMike Krus2016-01-051-3/+3
| | | | | | | | | | | | | | | | | | | | Builds but not tested Moved Q_DECLARE_METATYPE outside of namespace to fix namespaced builds Change-Id: I19c1dba904da8fad155f0f612b863e8f5e0c422e Reviewed-by: James Turner <james.turner@kdab.com> Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com> Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Bluetooth: Fix endianness issues in GATT server autotest.Christian Kandeler2015-12-162-10/+12
| | | | | | | | | | Change-Id: Ifac43c3799f87de7ed0ea981ed7e229714f51584 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Bluetooth LE: Implement GATT server write support.Christian Kandeler2015-12-152-11/+176
| | | | | | | | | | | | | | | | | | | | Write Request, Write Command and Execute Write Request are fully implemented now. Signed Write support is still missing. Notifications and Indications are sent. The server side gets informed via the respective signals when a client writes a characteristic or descriptor. Change-Id: Icba6a0270f6e1c4c3ed2ba61b55c1a5fbb69752b Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Bluetooth LE: Implement ATT access permissions.Christian Kandeler2015-12-042-3/+35
| | | | | | | | | | Change-Id: I456d083d45569ea8d61f0a659f72646d653143d1 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Merge remote-tracking branch 'gerrit/dev' into neardAlex Blasche2015-12-034-5/+0
|\| | | | | | | Change-Id: I1fc766d26aadb7cc01d33c4c8a2260411d7bb138
| * Merge remote-tracking branch 'origin/5.6' into devLiang Qi2015-12-014-5/+0
| |\ | | | | | | | | | Change-Id: Id2cf334af75d6a0804da7e0125ff7552c49f9ac4
| | * Bluetooth autotests - remove outdated insignificantTimur Pocheptsov2015-11-254-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | Several tests were marked as 'insignificant' in the past, but nowadays tests can deal with VMs without BT adapters. Change-Id: If657b3723a9a3f88c9c638105a077fd7396931d8 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | | Bluetooth: Partial implementation of GATT server functionality.Christian Kandeler2015-11-302-9/+205
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Available so far are all "read" and "find" requests (BlueZ only). Things left to do: - Access checks regarding authentication, authorization and encryption requirements. - Handling write requests. - Notifications and Indications. Change-Id: Idfcb863b1b375cd0414580b5ce1cba67c23a6bf8 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | | Bluetooth: Add API to set up GATT services.Christian Kandeler2015-11-201-0/+92
| | | | | | | | | | | | | | | | | | | | | This is the next step in implementing LE peripheral support. Change-Id: I5e8cb186d556e7bfb9ae8a5e60e051ff7398b77d Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | | Bluetooth: Introduce API for LE advertising.Christian Kandeler2015-11-178-0/+250
|/ / | | | | | | | | | | | | And provide an implementation for BlueZ. Change-Id: I302aee7c43b77016d9e1e7a0d5bcbf00096abf76 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Tests: Remove QT_DISABLE_DEPRECATED_BEFORE=0.Friedemann Kleint2015-08-253-4/+0
| | | | | | | | | | | | | | Fix usage of API that is marked deprecated. Change-Id: I82fe0911f6783a709356211b001e1d377f694642 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Remove QT_DISABLE_DEPRECATED_BEFORE=0 from tests not using deprecated API.Friedemann Kleint2015-08-2515-15/+0
|/ | | | | Change-Id: I56709b173111ca52cc5c524ecf9ec72e25721f6a Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* Add security flag support for tests with bttestuiAlex Blasche2015-07-063-3/+73
| | | | | | | | | | The user presses the "Cycle SecFlag" button and chooses the required sec level. The sec level is set on client and server socket shortly before connectToService() and listen() are called. Change-Id: Ic841fb22eb2acaf738435d6d34897b7efb59e22e Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* Add test for QBluetoothSocket::preferredSecurityFlags() and setterAlex Blasche2015-07-062-1/+32
| | | | | | Task-number: QTBUG-46377 Change-Id: I12de86befe60c7d4167a6b630e3fddaf55863039 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-06-294-8/+0
|\ | | | | | | | | | | | | | | Conflicts: .qmake.conf src/nfc/doc/src/nfc-index.qdoc Change-Id: Ie12d3023ff934f6579ae93617c95fc654e85a7f0
| * Port from Q_ENUMS to new macro Q_ENUMKonstantin Ritt2015-06-234-8/+0
| | | | | | | | | | | | | | | | | | | | | | Remove Q_ENUMS in favor of the new Q_ENUM macro which provides registration as meta enum and a debug stream operator. Register some enums via Q_ENUM to improve debug output and types auto-registration. Change-Id: I31c9535a2de7da1783b4ec967612c02a57cb62ff Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Remove QNX/BlackBerry implementation for QtBluetoothAlex Blasche2015-06-175-15/+0
|/ | | | | | | | | [ChangeLog][QtBluetooth][Platform Specific Changes] Removed support for Blackberry 10. Change-Id: I431c4f34bb10aa3668542df7a8b3403b61bf4705 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Test Q_DECLARE_OPERATORS_FOR_FLAGS operatorsAlex Blasche2015-05-284-1/+132
| | | | | | | | | This global operator was added to QBluetoothDeviceInfo and QLowEnergyService flags. Change-Id: Ic841cf8c08a2289a9c112dc6283c8891dcc8750e Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* Unit test for new QBluetoothHostInfo comparison operatorsAlex Blasche2015-05-271-0/+58
| | | | | Change-Id: I40ac86ccf94e8575220e6094dfec0d5537eba3a1 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Reduce platform specific code linesAlex Blasche2015-05-122-65/+46
| | | | | | | | | | | | QLEController(QBluetoothAddress) ctor is not usable on iOS and OSX. On those platforms we have to use QLECOntroller(QBluetoothDeviceInfo). We mark the QBluetoothAddress based ctors of QLEController obsolete and remove most uses of them. This cleans up some ifdefs throughout the QtBluetooth code base. Change-Id: Ibe1e3fa271a29461e39fc3c0eeba7a910a250077 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* Make the QLEService unit test more error tolerantAlex Blasche2015-04-151-10/+11
| | | | | | | | | The service discovery sometimes takes longer than 10s on Adroid and there is really no point in testing the value of the System ID characteristic. This value is different for every device. Change-Id: Ib418e852e8a41db7483c5b47d2d0dc61f28b05b2 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* Add tests for QLEService::readDescriptor()Alex Blasche2015-04-151-4/+31
| | | | | Change-Id: I84f6d76e89036d29f14f8ca326f3fa26e626ff63 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* Add QLEService tests dealing with read and write error casesAlex Blasche2015-04-151-0/+230
| | | | | Change-Id: If3ea946371583b0011e6fb9533d4d5789db3739b Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* Always read/write the GATT hardware even if meta data reports otherwiseAlex Blasche2015-04-151-2/+2
| | | | | | | | | | | | | | | | It is possible that a ATT attribute is not readable or writable. Usually this is reported via descriptors or other types of meta data. However it is possible that the meta data is reporting the wrong information. Therefore we always ensure that every read and write request is forwarded to the hardware. It is up to the hardware to respond to such requests. This change keeps the device usable in cases of buggy device meta data. This only affected writeCharacteristic() calls. Change-Id: Ieb2b95f47aa51c86a8ae7c4bebed4043d7478874 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com> Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* Add writeCharacteristic() test to encrypted characteristicAlex Blasche2015-04-151-4/+26
| | | | | | | The test is not automatic and the right hardware setup is required. Change-Id: I6ad9115e21cbd826cfe647a66f5b58f56a380a6f Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* Add tests for QLES::readCharacteristic()Alex Blasche2015-04-151-10/+138
| | | | | | | | | | | | | | | | | The following types of tests are performed: 1. reading of char value that fits into single ATT packet 2. reading of char value that is not readable 3. reading of char value that is requires two ATT packets (blob reads) 4. reading of char value that is exactly as long as one ATT packet (this is different than case 1 as it triggers blob reads where the the first blob read packaet is empty) Cases 1 & 2 are done using the TI Sensor Tag. Cases 3 & 4 require programmable CSR dev kit. Those tests are not enabled by default and require manual setup. Change-Id: I402a7369abbbde6b8309bed8bef6b9a9441cabc9 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* Merge remote-tracking branch 'origin/5.4' into 5.5Frederik Gladhorn2015-02-248-0/+23331
|\ | | | | | | Change-Id: Ie5ce761b77cc5c02647a9f7d52f427401b85d6b0
| * bic: Add 5.{2,3,4}.0 bic data for QtBluetooth and QtNfcSergio Ahumada2015-02-178-0/+23331
| | | | | | | | | | | | Change-Id: I0b98c18e0943b250debcf6e5461ddb19fba024ab Reviewed-by: Liang Qi <liang.qi@theqtcompany.com> Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Update copyright headersJani Heikkinen2015-02-1626-181/+181
| | | | | | | | | | | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I3822a6484e8f7a420330de1cb1aeb0c3d1cf41b7 Reviewed-by: Sergio Ahumada <sahumada@texla.cl>
* | Optimize qRegisterMetaType() calls for QBluetoothTransferReplyAlex Blasche2015-01-281-1/+0
| | | | | | | | | | | | | | | | | | | | This reduces the number of registration calls since a QBluetoothTransferManager is created once or twice whereas multiple QBluetoothTransferReply instances are common. Change-Id: I14bc636cb91d9bd399d8dae55140808ec6bf7fe5 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | Convert qRegisterMetaType<T>(const char*) to qRegisterMetaType<T>()Alex Blasche2015-01-2812-31/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is much safer and cleaner. [ChangeLog][QtBluetooth][Important Behavior Changes] Q_DECLARE_METATYPE added for QBluetoothServiceDiscoveryAgent::Error, QBluetoothSocket::SocketState, QBluetoothSocket::SocketError and QBluetoothDeviceInfo. This breaks source compatibility if application code has defined the above metatypes already. The applications Q_DECLARE_METATYPE must be removed to fix the compile error. Change-Id: I1c7cb1ee25832b7e5337c9aca6f36b21e8caf22e Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com> Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | QLowEnergyController - auto test (OS X/iOS)Timur Pocheptsov2014-12-091-6/+86
| | | | | | | | | | | | | | | | | | | | | | Ajust the test to make it also work with Core Bluetooth: with Core Bluetooth we do not have device address, we have only uuids (Apple's unique NSUUIDs generated for LE peripherals), this patch mainly addresses this issue - controller has to be created with LE device info, not QBluetoothAddress. Change-Id: I236cd55bfc41a8333fce663fb3b780ee219f8cec Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Extend QLEController test to cover non-readable char updatesAlex Blasche2014-12-041-0/+28
| | | | | | | | | | | | | | | | | | When characteristicWritten() and characteristicChanged() signal is emitted for a non-readable characteristic, value() should not update. Change-Id: I28e377e75397e2bf01df535bc8f4b55c3561cdff Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com> Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Make QLEController unit test pass on AndroidAlex Blasche2014-12-041-2/+30
| | | | | | | | | | | | | | | | | | | | | | | | 1.) Android needs some time in between disconnect/connect attempts. 2.) Adjust unit test to modified charWritten/charChanged signals 3.) Make tst pass on Android when using WriteWithoutResponse mode when writing characteristics. Android seems to ignore this property as the platform keeps sending characteristicWritten() signals. Change-Id: I9879af989471b32ff28acc64c9897da018910515 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com> Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | QBluetoothServiceDiscoveryAgent - auto test on OS XTimur Pocheptsov2014-12-032-1/+9
| | | | | | | | | | | | | | | | Enable this test back (removing 'insignificant') + modify a test to make it pass if BT adapter is OFF. Change-Id: Ia2951eeed75a6695ed9ac8fc803cb2ba6668e469 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | QBluetoothServiceInfo - auto test on OS XTimur Pocheptsov2014-12-031-1/+0
| | | | | | | | | | | | | | This test was already protected against 'Bluetooth is OFF' state. Change-Id: I03f58ed740baab24bfbe331e80df92193af5428b Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | QBluetoothSocket - auto test on OS XTimur Pocheptsov2014-12-031-1/+0
| | | | | | | | | | | | | | The test works ok even with BT adapter off. Change-Id: I3b1743fd92f41a57803a5c9df82fb1fc0788834b Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | QBluetoothDeviceDiscoveryAgent - test on OS XTimur Pocheptsov2014-12-031-1/+0
| | | | | | | | | | | | | | This test works ok even if BT is OFF. Change-Id: I5b3ce3f0aebc2b58df5e59d42e620385116daba1 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | QBluetoothServer - auto test on OS XTimur Pocheptsov2014-12-031-0/+8
| | | | | | | | | | | | | | Modify the test to deal with Bluetooth adapter OFF on OS X. Change-Id: If45b620bb7a7c86016da0bb1cd04ed60af73662b Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | QBluetoothLocalDevice - isValid, tests (OS X and iOS)Timur Pocheptsov2014-12-032-1/+8
| | | | | | | | | | | | | | | | | | | | | | Cancel the previous modification - even if BT is off, the device is valid unless we create it with some address (in the 'OFF' state I can not verify any address and the device is considered invalid). Enable (back) auto-test - if BT is off we just skip the test (as it's done in other test functions). Change-Id: I8b013af6a73eab9699a91834e197716836b00e78 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>