summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/position/android/src/plugin.json3
-rw-r--r--src/plugins/position/corelocation/plugin.json3
-rw-r--r--src/plugins/position/geoclue/plugin-satellite.json3
-rw-r--r--src/plugins/position/geoclue/plugin.json3
-rw-r--r--src/plugins/position/gypsy/plugin.json3
-rw-r--r--src/plugins/position/positionpoll/plugin.json3
-rw-r--r--src/plugins/position/simulator/plugin.json3
-rw-r--r--src/plugins/position/winrt/plugin.json3
-rw-r--r--src/positioning/qgeopositioninfosource.cpp6
-rw-r--r--src/positioning/qgeosatelliteinfosource.cpp6
-rw-r--r--tests/auto/positionplugin/plugin.json3
11 files changed, 30 insertions, 9 deletions
diff --git a/src/plugins/position/android/src/plugin.json b/src/plugins/position/android/src/plugin.json
index b84fafea..4fd87892 100644
--- a/src/plugins/position/android/src/plugin.json
+++ b/src/plugins/position/android/src/plugin.json
@@ -4,5 +4,6 @@
"Position": true,
"Satellite": true,
"Monitor": false,
- "Priority": 1000
+ "Priority": 1000,
+ "Testable": false
}
diff --git a/src/plugins/position/corelocation/plugin.json b/src/plugins/position/corelocation/plugin.json
index 96e5cbf1..58e3acd0 100644
--- a/src/plugins/position/corelocation/plugin.json
+++ b/src/plugins/position/corelocation/plugin.json
@@ -4,5 +4,6 @@
"Position": true,
"Satellite": false,
"Monitor" : false,
- "Priority": 1000
+ "Priority": 1000,
+ "Testable": false
}
diff --git a/src/plugins/position/geoclue/plugin-satellite.json b/src/plugins/position/geoclue/plugin-satellite.json
index 59e190f1..cf03d6ed 100644
--- a/src/plugins/position/geoclue/plugin-satellite.json
+++ b/src/plugins/position/geoclue/plugin-satellite.json
@@ -3,5 +3,6 @@
"Provider": "geoclue",
"Position": true,
"Satellite": true,
- "Priority": 1000
+ "Priority": 1000,
+ "Testable": false
}
diff --git a/src/plugins/position/geoclue/plugin.json b/src/plugins/position/geoclue/plugin.json
index cac7345b..f11d27cb 100644
--- a/src/plugins/position/geoclue/plugin.json
+++ b/src/plugins/position/geoclue/plugin.json
@@ -4,5 +4,6 @@
"Position": true,
"Satellite": false,
"Monitor": false,
- "Priority": 1000
+ "Priority": 1000,
+ "Testable": false
}
diff --git a/src/plugins/position/gypsy/plugin.json b/src/plugins/position/gypsy/plugin.json
index b3ecc0f7..9cef03f8 100644
--- a/src/plugins/position/gypsy/plugin.json
+++ b/src/plugins/position/gypsy/plugin.json
@@ -4,5 +4,6 @@
"Position": false,
"Satellite": true,
"Monitor" : false,
- "Priority": 1000
+ "Priority": 1000,
+ "Testable": false
}
diff --git a/src/plugins/position/positionpoll/plugin.json b/src/plugins/position/positionpoll/plugin.json
index a5b2f602..df1f47de 100644
--- a/src/plugins/position/positionpoll/plugin.json
+++ b/src/plugins/position/positionpoll/plugin.json
@@ -4,5 +4,6 @@
"Position": false,
"Satellite": false,
"Monitor": true,
- "Priority": 1000
+ "Priority": 1000,
+ "Testable": true
}
diff --git a/src/plugins/position/simulator/plugin.json b/src/plugins/position/simulator/plugin.json
index 8aa5e79f..0935f4dc 100644
--- a/src/plugins/position/simulator/plugin.json
+++ b/src/plugins/position/simulator/plugin.json
@@ -4,5 +4,6 @@
"Position": true,
"Satellite": true,
"Monitor" : false,
- "Priority": 1000
+ "Priority": 1000,
+ "Testable": true
}
diff --git a/src/plugins/position/winrt/plugin.json b/src/plugins/position/winrt/plugin.json
index 5bb21702..0696cb0a 100644
--- a/src/plugins/position/winrt/plugin.json
+++ b/src/plugins/position/winrt/plugin.json
@@ -4,5 +4,6 @@
"Position": true,
"Satellite": false,
"Monitor" : false,
- "Priority": 1000
+ "Priority": 1000,
+ "Testable": false
}
diff --git a/src/positioning/qgeopositioninfosource.cpp b/src/positioning/qgeopositioninfosource.cpp
index 1cdd4116..0cec8eaa 100644
--- a/src/positioning/qgeopositioninfosource.cpp
+++ b/src/positioning/qgeopositioninfosource.cpp
@@ -158,6 +158,12 @@ void QGeoPositionInfoSourcePrivate::loadPluginMetadata(QHash<QString, QJsonObjec
QList<QJsonObject> meta = l->metaData();
for (int i = 0; i < meta.size(); ++i) {
QJsonObject obj = meta.at(i).value(QStringLiteral("MetaData")).toObject();
+ const QString testableKey = QStringLiteral("Testable");
+ if (obj.contains(testableKey) && !obj.value(testableKey).toBool()) {
+ static bool inTest = qEnvironmentVariableIsSet("QT_QTESTLIB_RUNNING");
+ if (inTest)
+ continue;
+ }
obj.insert(QStringLiteral("index"), i);
plugins.insertMulti(obj.value(QStringLiteral("Provider")).toString(), obj);
}
diff --git a/src/positioning/qgeosatelliteinfosource.cpp b/src/positioning/qgeosatelliteinfosource.cpp
index 06d6771d..da6eb8a0 100644
--- a/src/positioning/qgeosatelliteinfosource.cpp
+++ b/src/positioning/qgeosatelliteinfosource.cpp
@@ -167,6 +167,12 @@ QGeoSatelliteInfoSource *QGeoSatelliteInfoSource::createDefaultSource(QObject *p
if (obj.value(QStringLiteral("Satellite")).isBool()
&& obj.value(QStringLiteral("Satellite")).toBool())
{
+ const QString testableKey = QStringLiteral("Testable");
+ if (obj.contains(testableKey) && !obj.value(testableKey).toBool()) {
+ static bool inTest = qEnvironmentVariableIsSet("QT_QTESTLIB_RUNNING");
+ if (inTest)
+ continue;
+ }
QGeoPositionInfoSourcePrivate d;
d.metaData = obj;
d.loadPlugin();
diff --git a/tests/auto/positionplugin/plugin.json b/tests/auto/positionplugin/plugin.json
index c16b7a8d..68acaded 100644
--- a/tests/auto/positionplugin/plugin.json
+++ b/tests/auto/positionplugin/plugin.json
@@ -4,5 +4,6 @@
"Position": true,
"Satellite": false,
"Monitor": false,
- "Priority": 0
+ "Priority": 0,
+ "Testable": true
}