summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAlex Blasche <alexander.blasche@digia.com>2013-08-06 16:22:37 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-08-22 08:48:20 +0200
commit7a53f30ee48b1073333cd40bed1ab7473e3bf1f6 (patch)
treeb29398e02900fb68d1f706e2552a86e0ba5567a2 /tests
parent23544d87a196a7306f87a09ca799baada6c45729 (diff)
downloadqtlocation-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.cpp7
-rw-r--r--tests/auto/positionplugin/plugin.json1
-rw-r--r--tests/auto/positionplugintest/tst_positionplugin.cpp2
-rw-r--r--tests/auto/qgeoareamonitor/tst_qgeoareamonitor.cpp12
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