diff options
author | Alex Blasche <alexander.blasche@digia.com> | 2013-08-06 16:22:37 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-08-22 08:48:20 +0200 |
commit | 7a53f30ee48b1073333cd40bed1ab7473e3bf1f6 (patch) | |
tree | b29398e02900fb68d1f706e2552a86e0ba5567a2 /tests | |
parent | 23544d87a196a7306f87a09ca799baada6c45729 (diff) | |
download | qtlocation-7a53f30ee48b1073333cd40bed1ab7473e3bf1f6.tar.gz |
QGeoAreaMonitor becomes loadable via plugins.
The polling-based default implementation is separated out into its own
plugin.
Task-number: QTBUG-31960
Change-Id: Ife25f6a83dd51f32fcd9ee3bfde1ca51291c78e4
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/positionplugin/plugin.cpp | 7 | ||||
-rw-r--r-- | tests/auto/positionplugin/plugin.json | 1 | ||||
-rw-r--r-- | tests/auto/positionplugintest/tst_positionplugin.cpp | 2 | ||||
-rw-r--r-- | tests/auto/qgeoareamonitor/tst_qgeoareamonitor.cpp | 12 |
4 files changed, 22 insertions, 0 deletions
diff --git a/tests/auto/positionplugin/plugin.cpp b/tests/auto/positionplugin/plugin.cpp index a18f1db8..26f8ed34 100644 --- a/tests/auto/positionplugin/plugin.cpp +++ b/tests/auto/positionplugin/plugin.cpp @@ -190,6 +190,7 @@ class QGeoPositionInfoSourceFactoryTest : public QObject, public QGeoPositionInf public: QGeoPositionInfoSource *positionInfoSource(QObject *parent); QGeoSatelliteInfoSource *satelliteInfoSource(QObject *parent); + QGeoAreaMonitor *areaMonitor(QObject *parent); }; QGeoPositionInfoSource *QGeoPositionInfoSourceFactoryTest::positionInfoSource(QObject *parent) @@ -204,4 +205,10 @@ QGeoSatelliteInfoSource *QGeoPositionInfoSourceFactoryTest::satelliteInfoSource( return 0; } +QGeoAreaMonitor *QGeoPositionInfoSourceFactoryTest::areaMonitor(QObject* parent) +{ + Q_UNUSED(parent) + return 0; +} + #include "plugin.moc" diff --git a/tests/auto/positionplugin/plugin.json b/tests/auto/positionplugin/plugin.json index 147b7d40..c16b7a8d 100644 --- a/tests/auto/positionplugin/plugin.json +++ b/tests/auto/positionplugin/plugin.json @@ -3,5 +3,6 @@ "Provider": "test.source", "Position": true, "Satellite": false, + "Monitor": false, "Priority": 0 } diff --git a/tests/auto/positionplugintest/tst_positionplugin.cpp b/tests/auto/positionplugintest/tst_positionplugin.cpp index 42e9b058..384f7a80 100644 --- a/tests/auto/positionplugintest/tst_positionplugin.cpp +++ b/tests/auto/positionplugintest/tst_positionplugin.cpp @@ -45,6 +45,7 @@ #include <QSignalSpy> #include <qgeopositioninfosource.h> #include <qgeosatelliteinfosource.h> +#include <qgeoareamonitor.h> #include <qgeocoordinate.h> QT_USE_NAMESPACE @@ -77,6 +78,7 @@ void tst_PositionPlugin::availableSources() { QVERIFY(QGeoPositionInfoSource::availableSources().contains("test.source")); QVERIFY(!QGeoSatelliteInfoSource::availableSources().contains("test.source")); + QVERIFY(!QGeoAreaMonitor::availableMonitors().contains("test.source")); } void tst_PositionPlugin::create() diff --git a/tests/auto/qgeoareamonitor/tst_qgeoareamonitor.cpp b/tests/auto/qgeoareamonitor/tst_qgeoareamonitor.cpp index 7d2230ab..347fca19 100644 --- a/tests/auto/qgeoareamonitor/tst_qgeoareamonitor.cpp +++ b/tests/auto/qgeoareamonitor/tst_qgeoareamonitor.cpp @@ -140,6 +140,18 @@ private slots: QGeoAreaMonitor* obj = QGeoAreaMonitor::createDefaultMonitor(parent); QVERIFY(obj != 0); delete parent; + + const QStringList monitors = QGeoAreaMonitor::availableMonitors(); + QVERIFY(!monitors.isEmpty()); + QVERIFY(monitors.contains(QStringLiteral("positionpoll"))); + + parent = new QObject; + obj = QGeoAreaMonitor::createMonitor(QStringLiteral("positionpoll"), parent); + QVERIFY(obj != 0); + delete parent; + + obj = QGeoAreaMonitor::createMonitor(QStringLiteral("randomNonExistingName"), 0); + QVERIFY(obj == 0); } //TC_ID_4_x_1 |